建立應用程序框架,首先要考慮的問題是,你准備采用哪種分層架構,然后根據應用程序框架的邏輯層次來確定需要創建的VS解決方案和程序集。 如果項目很小,需求很簡單,時間異常緊迫,且你手上沒有任何積累,那么,單層架構將是首選,最簡單的單層架構如下圖所示(為了集中你的注意力,我把不相關的文件都刪除 ...
時隔一年,繼續我們的Apworks框架之旅。在接下來的文章中,我將逐漸向大家介紹如何在Visual Studio中結合Apworks框架,使用ASP.NET Web API和MVC來開發面向經典分層架構的應用程序。在這一講中,我們首先了解一下分層架構的各個 層 ,以及所涉及的Visual Studio項目,然后,我們從領域模型開始,在Visual Studio中開始我們的應用程序開發之旅。 說明: ...
2015-10-02 11:40 14 5299 推薦指數:
建立應用程序框架,首先要考慮的問題是,你准備采用哪種分層架構,然后根據應用程序框架的邏輯層次來確定需要創建的VS解決方案和程序集。 如果項目很小,需求很簡單,時間異常緊迫,且你手上沒有任何積累,那么,單層架構將是首選,最簡單的單層架構如下圖所示(為了集中你的注意力,我把不相關的文件都刪除 ...
的集合外觀,僅僅是一種模擬,除了測試以外,沒有理由使用內存中真正的集合來創建倉儲。 不應該為所有實 ...
前面已經介紹了DDD分層架構的實體和值對象,本文將介紹聚合以及與其高度相關的並發主題。 我在之前已經說過,初學者第一步需要將業務邏輯盡量放到實體或值對象中,給實體“充血”,這樣可以讓業務邏輯高度內聚,並為你提供業務邏輯的唯一訪問點。而聚合則是第二步,它將多個相關業務概念包裝到單一的概念中 ...
上一篇,我介紹了自己在DDD分層架構方面的一些感想,本文開始介紹領域層的實體,代碼主要參考自《領域驅動設計C#2008實現》,另外參考了網上找到的一些示例代碼。 什么是實體 由標識來區分的對象稱為實體。 實體的定義隱藏了幾個信息: 兩個實體對象,只要它們的標識屬性值相等 ...
在應用程序框架實戰十四:DDD分層架構之領域實體(基礎篇)一文中,我介紹了領域實體的基礎,包括標識、相等性比較、輸出實體狀態等。本文將介紹領域實體的一個核心內容——驗證,它是應用程序健壯性的基石。為了完成領域實體的驗證,我們在前面已經准備好了驗證公共操作類和異常公共操作類。 .Net提供 ...
前面介紹了DDD分層架構的實體,並完成了實體層超類型的開發,同時提供了驗證方面的支持。本篇將介紹另一個重要的構造塊——值對象,它是聚合中的主要成分。 如果說你已經在使用DDD分層架構,但你卻從來沒有使用過值對象,這毫不奇怪,因為多年來養成的數據建模思維已經牢牢把你禁錮,以致於你在使用 ...
前面介紹了應用程序框架的一個重要組成部分——公共操作類,並提供了一個數據類型轉換公共操作類作為示例進行演示。下面准備介紹應用程序框架的另一個重要組成部分,即體系架構支持。你不一定要使用DDD這樣的架構,使用單層架構和普通三層架構一樣可以,不過你如果希望獲得更進一步的復用性和封裝度,使用 ...
上一篇介紹了值對象的基本概念,得到了一些朋友的支持,另外也有一些朋友提出了不同意見。這其實是很自然的事情,設計本來就充滿了各種可能性,沒有絕對正確的做法,只有更好的實踐。但是設計與實踐的好與壞,對 ...