オブジェクト指向プログラミングの考え方
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/11 01:34 UTC 版)
「オブジェクト指向分析設計」の記事における「オブジェクト指向プログラミングの考え方」の解説
オブジェクト指向設計においては、後工程であるオブジェクト指向プログラミングにおける考え方も、必要に応じて考慮する。 アスペクト指向プログラミング アスペクト指向プログラミング (AOP; aspect-oriented programming) では、プログラム (システム) のすべての主だった機能は、アスペクトであると考える。アスペクトには、中心的な関心事 (ビジネスロジック) と横断的な関心事 (付加的な機能) とがある。分割しておいた中心的な関心事と付加的な関心事をいっしょに編み合わせる (weaving) ことにより、分割しておいたアスペクトを基にして、プログラム全体を生成することができる。 依存性の注入 依存性の注入 (dependency injection) の基本的な考えは、あるオブジェクトが何か別のオブジェクトへの参照をもつことに依存しているのであれば、依存される側のオブジェクトを依存する側のオブジェクトに「注入」する、ということである。例えば、データベース接続を表現するオブジェクトが必要なオブジェクトがあるのであれば、そのオブジェクト内でデータベース接続オブジェクトを生成するのではなく、そのオブジェクトのコンストラクタ (新たなオブジェクトを生成する際に呼び出される手続き) への引数 (パラメタ) として、データベース接続オブジェクトをそのオブジェクトに渡すのである。 循環しない依存性の原則 パッケージやソフトウェアコンポーネントの依存性のグラフは、循環するべきではないという原則。このことは、依存性のグラフは有向非循環グラフであるべきであるとも、述べることができる。例えば、パッケージCがパッケージBに依存しているとし、パッケージBがパッケージAに依存しているとする。もしパッケージAがパッケージCに依存しているのであれば、依存性は循環している。パッケージAがパッケージCに依存していないのであれば、依存性は循環していない。 複合オブジェクトによる再利用の原則 継承よりも、多態性を備えた複合オブジェクトを採用する。
※この「オブジェクト指向プログラミングの考え方」の解説は、「オブジェクト指向分析設計」の解説の一部です。
「オブジェクト指向プログラミングの考え方」を含む「オブジェクト指向分析設計」の記事については、「オブジェクト指向分析設計」の概要を参照ください。
- オブジェクト指向プログラミングの考え方のページへのリンク