0から始まるプロジェクトで最初から気合を入れて設計しない
アプリケーションによってうまくいく設計は違うし、開発が進まないとどういう設計がうまくいくかはわからない
がんばって設計しようとすると不要な概念がどんどん組み込まれて過剰に複雑になる
アプリの複雑さと設計の複雑さのバランスを取る
その設計が解決する問題に直面してないので、雰囲気でインターフェースを作ったりレイヤーを切ったりする
設計本に書かれていることや各種デザインパターンがすべてのアプリで有効な訳では無い
「銀の弾丸はない」ということを今一度思い出す
最初に設計するのではなく、常に設計をする
目の前の問題を解決する設計を行い、あとになってその設計が問題になってきたら、その問題を解決する設計をまた考える
原則に従って何度もリファクタリングを繰り返せば大きく失敗することはないと思う
設計もリファクタリングもある一点で一気にやるのではなくて、常に繰り返すものだと心得る
がんばって設計しようと悩んでいる暇があるならさっさとコードを書く