個人的なWebアプリケーションの設計手法 (C-R-P)
個人的なWebアプリケーションフレームワークで
取っている手法としては、
Configure - Resource - Process と言った形に分ていて
Configureが各処理を、HTTPとバインディングをしていて
あるURLリソースに関して、何がしかの処理を行うっと言った形で
Webアプリケーションを表現している。
bind(IndexResource).method(GET).uri('/index')
.process(Init)
.process(html.path('index.html'))
プロセスにて、MVCで有る所のViewを表現したり
リダイレクト等の、遷移を表現したりする。
リソースは、URLリソースをそのまま表現する
リソースが必要な情報に関しては、DIにて解決する
そっから先の、責務の分割については普通のオブジェクト指向的な
解法にて何とかする。
シンプルに綺麗に解決したければ
シンプルな仕組みで全てが解決される用にする。
レイヤが増えれば増える程に難しく。
Webって言うメモリライフサイクル
処理のライフサイクルを忠実に表現する方が
見通しは良くなると思う。