設計は「未来を当てること」ではない
設計という言葉を聞くと、
- 将来の要件を予測する
- 変更に全部対応できる形を考える
そんなイメージを持たれがちです。
ですが実務では、
未来を正確に当てることはほぼ不可能です。
先読みしすぎて失敗した経験
過去を振り返ると、
先回りしすぎた設計ほど、
- 使われない
- 複雑になる
- 触りにくくなる
という結果になりがちでした。
「来るかもしれない変更」に備えた構造が、
今の修正を難しくしていたのです。
設計の本質は「整理」
設計で本当にやっていることは、
未来予測ではありません。
- 今ある処理を並べる
- 役割ごとに分ける
- 境界をはっきりさせる
つまり、
現状を整理する行為 です。
整理されているコードの特徴
整理されたコードには、
共通した特徴があります。
- 何をしているか説明できる
- どこを直せばいいか分かる
- 触らない部分が見える
これは、
先を読んだからではなく、
今を理解できているからです。
整理が未来への余白を作る
不思議なことに、
整理されたコードほど、
後からの変更に強くなります。
それは、
無理に対応しようとしていない分、
余白が残っている からです。
余白は、
設計の結果として生まれます。
作って分かったこと
このテーマを通して分かったのは、
- 設計は当てる作業ではない
- 整理すると自然に余白ができる
- 今を説明できないと未来は扱えない
ということです。
おわりに
この話は、
設計を「先読み」ではなく
「整理」として捉え直した記録です。
次は、
コードの寿命について、
もう一段踏み込んで考えていきます。


コメント