アダプティブコードの根っこの根っこ(2)
nomoredeathmarch.hatenablog.com
前回のエントリの続き、
定義済みデリゲートを最低限のインターフェースに置き換えたとこまで。
じゃあアプリケーション上のすべての処理をこれらのインターフェースだけで賄うべきだ、とはならないのだろう。
.net frameworkのIComparerしかり、DDDのspecificationパターンやrepositoryパターンなど、ドメインレベルや個々の機能レベルでより目的に特化したインターフェース設計をしなければいけないのでは?
ではその目的に特化したインターフェースって何よ?って考えだすと切りがない。
この辺りの匙加減がOOPに限らず、設計全般において悩ましいところだなと思うところです。
かといって、「今動けば正義、あとのことは知らん。」っていうその場限りのコーディングもしたくないジレンマ。