分解
Decomposition
ぶんかい
オブジェクト指向で、全体を表すオブジェクトを、それを構成する部分のオブジェクトに分けて捉えること。部分をまとめて全体として捉える集約の逆の見方で、「部分は全体の一部である」(part-of)の関係を表す。例えば「自動車」を「エンジン」「車輪」「車体」に分解する。
Related
他の資格での定義
Related
関連キーワードの用語
オブジェクト指向プログラミングにおいて、スーパークラスで定義されたメソッドをサブクラスで再定義すること。ポリモーフィズム(多態性)の実現手段であり、同じメソッド名でクラスごとに異なる振る舞いを実装できる。
同一名のメソッドや関数を引数の型や数を変えて複数定義すること。コンパイル時に引数に応じて適切なメソッドが選択される(静的多態性)。コンストラクタのオーバーロードにより、異なる初期化方法を提供できる。
クラス、インスタンス、属性、メソッドなどの概念を用いてソフトウェアを設計する手法。カプセル化、継承(インヘリタンス)、多相性(ポリモーフィズム)が基本原則。SOLID原則に基づいた設計が推奨される。
オブジェクト指向設計で頻出する問題に対する再利用可能な解決策のカタログ。GoF(Gang of Four)により、生成、構造、振る舞いの3種類23パターンが体系化されている。Singleton、Factory Method、Observer等が代表的。
オブジェクト指向設計の5つの基本原則。単一責任の原則(S)、開放閉鎖の原則(O)、リスコフの置換原則(L)、インタフェース分離の原則(I)、依存性逆転の原則(D)からなる。保守性や拡張性の高い設計を実現する指針。
オブジェクト指向で、複数のクラスに共通する性質(属性や操作)を取り出して、上位のクラス(スーパークラス)として定義すること。下位のクラスは上位のクラスの性質を継承し、「is-a」(〜は…の一種である)の関係になる。逆に、上位のクラスに固有の性質を加えて下位のクラスを定義することを特化という。
