アジャイルソフトウェア開発の奥義 第2部「アジャイル設計」の自分用まとめ。 アジャイル設計 アジャイルな設計 「原則」「パターン」「プラクティス」を継続的に適用することで、読みやすく変更に強い状態を保つことができる設計。 悪い設計 第2部の中で「貧弱な設計の兆候」「腐敗するソフトウェアの兆候」として、以下の7つが挙げられている。 硬さ (設計変更が難しい) 脆さ (設計が壊れやすい) 移植性のなさ (再利用が難しい) 扱いにくさ(正しい設計をするのが困難なソフトウェア、面倒な開発環境) 不必要な複雑さ("後で必要になるかもしれない"と考えて先行実装したコード) 不必要な繰り返し (コピペ) 不透明さ (目的や意図がわかりにくい) 原則 システムに悪い設計の兆候が見られるとき、その原因がオブジェクト指向設計の原則に反していることだったりする。 ただし無条件で原則に従うと「不必要な複雑さ」を招