ビジネスルールを0階のみで書ければ良かったのに、、、
リファクタリング 既存のコードを安全に改善する(第2版) [電子書籍版]
MartinFowler 訳者:児玉公信 , 友野晶夫 , 平澤章 , 梅澤真史 オーム社
(原著は、
Refactoring Improving the Design of Existing Code
(Addison-Wesley Professional) [電子書籍版] Martin Fowler
発売日:2018年11月20日 ピアソン)
の第4章 テストの構築の最後、これより先には、で、
- 本章で示したテストはいわゆる単体テストで、中略、自己テストされるシステムにおいて、ほとんどのテストは単体テストだからです。
と有りますが、
- それからほぼ8年経っても、
- 自己テストされるシステムは、すべて
0階ビジネスルールのみで、 - 0階ビジネスルールは全てのテストが、必ず単体テストになる
(「ほとんど」と言う必要は無かった。)
のです。
しかしながら、1階ビジネスルールも当然有ると思います。
それっこそ、テンプスパティウムのご加護(空間への保存とか、時間の流れとか)が必要な部類のビジネスルールです。
逆に因果ダイアログから、0階を無視しても問題無い理由
自己テストとして、確固たる正しさへの街道を得ている、0階ビジネスルールは、
- 逆に、
- 既に得ている、として、
- 設計段階、設計資料では、
- 無視して良い
のでは無いでしょうか?
- 出来て当然で、
- 差し替えも効く
からです。(人型ロボットで無い場合)設計書に歩き方は書きません。
結論
これからも「本当の高階の貌」を見誤る風潮でプログラミングが嫌いになる人は存在し続けることでしょう。