(1) オブジェクト指向設計 from オブジェクト指向設計実践ガイド
システムを、あらかじめ決められた手続きの集まりではなく、オブジェクト間で受け渡されるメッセージの連続としてモデル化
部品が相互に作用しあい、全体の振る舞いが生まれる 部品がオブジェクト、相互作用はオブジェクト間で受け渡されるメッセージ メッセージの送り手は受け手を知っている必要がある→依存関係を作る
オブジェクト指向設計とは、依存関係を管理すること
オブジェクト設計とは、変更が簡単になるようにどんなコード構成にするか
5つの原則 SOLID
- Single responsibility 単一責任
- Open-closed オープン・クローズド
- Liskow Substitution リスコフの置き換え
- Interface Segregation インターフェース分離
- Dependency Inversion 依存性逆転
DRY
Don’t Repeat Yourself
LoD
Law of Demeter デメテルの法則
BUFD(Big Up Front Design)
提案されたアプリケーションのすべての機能の、想定される未来の内部動作をすべて特定し、完全に文書化すること