【アーキテクチャ】 DCIって | さすらいびとの徒然漂流記

さすらいびとの徒然漂流記

ふらふら漂流するさすらいびとのように,色々な話題についてお気楽極楽,徒然なるままに…

本だけじゃなくてオンラインの記事も

積読となっているのがあるんだけど,

今回はその一つを消化したところで,

最初の印象をメモがてらに.



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