設計を行う上での目標は、要求通りに正しく動かすこと

次に大切なのは、実行効率よりも保守性と再利用性

設計の目的は以下の3つにある

重複を排除する

これは、クラス・ポリモーフィズム・継承によって実現可能

部品の独立性を高める

凝集度」と「結合度」の考え方。

凝集度: 個々の部品の機能のまとまり度合いを評価する尺度

結合度: 部品間の結びつき度合いを評価する尺度

<aside> 💡 凝集度が強く、結合度が弱い設計が望ましい

</aside>

部品の独立性を高めるコツ

凝集度を強めて、結合度を弱めるために

依存関係を循環させない

ソフトウェアに秩序を持ち込むために、パッケージやクラスの依存関係を循環させないことが大切