關於Component Business Model和DDD關係的探究結論

來源:互聯網
上載者:User

第一次聽IBM的講師(hi,Derek)講SIMM和SOMA時,還是去年的春天,雖然他著墨不多(據說那時IBM關於SOMA之前的方法論還沒有成體系,不便公開),但還是被Component Business Model吸引。我那個時候是DDD的狂熱愛好者,不像現在這樣對DDD做更多的思考。那個時候,只要跟DDD相關的東西,我都會考慮它跟DDD是不是有著某種神秘的擴充關係。CBM就是這樣被我納入我的關注清單範圍的。

說實話,CBM最初能給我留下印象,主要是 它有著一個明顯的責任層,在我的印象中,在large-scale Structure中使用的DDD中也有一個很明顯的職責層。當然,現在仔細看上去,這兩個東西並不是完成的一致的,但是確實有些隱隱綽綽的關聯的影子。現在我可以負責任的說,我確實也找到了兩者的聯絡。

因為DDD注釋版出版了,我順便去看DDD中文版的書評,DDD是一好書,直到現在很多人仍然是這麼說,在對中文版的翻譯提出若干的質疑後,有人寫道:“喜歡前面的幾章,值對象、實體、aggregate等概念第一次聽說,後面的東西就顯得很空洞了”(大意)。我其實對這種觀點是持反對意見的,作為基礎構造塊,前面提到的概念確實是DDD比較能夠吸引眼球的地方,但是,吸引眼球並不代表它就沒有問題。具體是什麼問題我先壓下不表,我反對這種觀點的更主要的原因是因為後幾章比前幾章精彩得多。

如果你有心讀到《戰略性設計》部分,你就會發現我前面提到的職責分層(Resposibility Layer)是很有實戰意義的。很多人像讀《設計模式》那樣讀DDD,這是錯的。如果你沒有把你的目光從設計轉到領域上,那麼你誤解了Eric了。

回到Component Business Model ,我不想跟人爭辯Business Model 和Domain Model是什麼樣的關係,是一體的還是各自獨立。這沒有什麼意義,我們能夠找到的是它能夠為我們的系統做些什麼,這就足夠了。CBM和DDD的最密切的聯絡,不是在職責分層上,而是在Service上。這也是DDD為什麼會列為SOMA推薦參考資料的主要原因。

今天寫出來的是一個小的結論,其實,我本周(其實可以更早的追溯到我上個周去北京出差參與的那個項目期間)我就在做DDD和CBM之間的關聯探究,探究的過程很有趣,我會在以後的blog中逐漸的放出我的探究過程的。

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.