本だけじゃなくてオンラインの記事も
積読となっているのがあるんだけど,
今回はその一つを消化したところで,
最初の印象をメモがてらに.
InfoQ: データ、コンテキスト、相互作用 :
James O. Coplien氏とTrygve Reenskau氏による新しい設計方法
GertrudAndCope: thedciarchitecture
The DCI Architecture: A New Vision of Object-Oriented Programming
Data, Context, and Interaction - Wikipedia, the free encyclopedia
「新しい設計手法」とあるけど,正直言って
JacobsonとNgのAOSDと同じに見えるね.
むしろ,DCIがApplication Domainのみに
留まっているのに対してAOSDはSolution
Domainも扱っている点でDCIがサブセット
って感じかな.
Dのデータがドメインモデル,
CのコンテキストとIの相互作用が
アスペクトのポイントカットとアドバイス
といったところかな.
もっとも,ロールモデルをmixinする実装として
aspectを使うと言うのはかなりゆがんでいるから
DCIではtraitを使うって言う考え自体は
より開発者に優しいっていうのは
あるだろうけど.
その意味ではSubject-orientedや
Multi-dimensional SoCとかの方が
より近いのかも.
それに,オブジェクト指向の要素で構築している
ってのもポイントって感じかな.
もっとも,C++の場合はtemplateでactionを
実装するからGeneric Programingってことに
なるんだけどね.
新しいって言うのにはかなり疑問があるのにも関わらず,
こんなに話題に上がるのはやっぱりMVCの父,
Trygve ReenskaugとOOやパターンで有名な
James O.Coplienが提唱しているから
っていうところかな.
二人とも実装よりだし,開発者に近いからね.
それとAgileとの親和性をうたっているからかな.
AOSDやMDSoCはその辺がなかったから
というか,Agileブームの前だったしね.
それにしてもDCIってOORAMが
ベースらしいんだけど…
OORAMはRebecca Wirfs-Brockにも影響を
与えたりと結構古いはずなのにね.
ちょっと気になったと言うか,かなりいい加減に感じたのが
MVCとDCIの対応付けかな.
なんか,簡単にいくって感じにさらっと流されていた気が…
それにしても,この辺の考えって最終的には
OMG MDAに繋がっている感じがするけど.
モデルベースかどうかって言うのはあるけど,
DCIは結構モデルベースで考えているし.
ともあれ,今週末にLean Archtectureが届いたので,
これを読んでもうちょっとDCIへの理解を深めようか
と言うところ.
ユースケースによるアスペクト指向ソフトウェア開発
(Object Oriented Selec.../
Ivar Jacobson
¥4,725
Amazon.co.jp
Aspect-Oriented Software Development with Use C.../
Ivar Jacobson
¥5,778
Amazon.co.jp
Working With Objects:
The Ooram Software Engine.../
T. Reenskaug
¥4,468
Amazon.co.jp
オブジェクトデザイン
(Object Oriented SELECTION)/
レベッカ・ワーフスブラック
¥3,990
Amazon.co.jp
Object Design:
Roles, Responsibilities, and Col.../
Rebecca Wirfs-Brock
¥5,294
Amazon.co.jp
Lean Architecture:
for Agile Software Development/
James Coplien
¥4,169
Amazon.co.jp