目錄
DDD理論學習系列(1)-- 通用語言
DDD理論學習系列(2)-- 領域
DDD理論學習系列(3)-- 限界上下文
DDD理論學習系列(4)-- 領域模型
DDD理論學習系列(5)-- 統一建模語言
DDD理論學習系列(6)-- 實體
DDD理論學習系列(7)-- 值對象
DDD理論學習系列(8)-- 應用服務&領域服務
DDD理論學習系列(9)-- 領域事件
DDD理論學習系列(10)-- 聚合
DDD理論學習系列(11)-- 工廠
上下文映射圖
戰略設計與戰術設計
實體
值對象
領域服務
領域事件
模塊
聚合
工廠
值對象
倉儲
未完待續,持續更新。
1. 序言
最近在看《實現領域驅動設計》,學習DDD的思想和理論。
都說理論要與實踐相結合。所以為了更好的理解DDD的精髓,我會結合一個真實的案例,通過DDD的理論來進行剖析和實踐。
2. 真實案例
有一朋友做辦公用品銷售維修與租賃的,規模不大,10人左右的小公司。
一天閑聊,說現在微信公眾號挺火的,想做一個嘗試,看能否在銷售和推廣上做一個新的突破。
我說好啊,反正平時有空余時間,我就慢慢幫你搞唄。
下面就是我們圍繞需求的對話:
朋友:搞辦公設備這一行業,價格不能太透明,不然企業死的快。
我:為什么?
朋友:你想啊,拼價格,你怎么拼得過淘寶京東。但我們在售后方面絕對比線上做的好。這也是我們這一行線下能夠存活的原因。
我:也就是說,做這個微信公眾號,做商品展示的話,不顯示價格。那如果客戶有購買傾向,但你們又不顯示價格,他就沒法做參考啊。
朋友:是的,你看看能否加個詢價功能。
我:你的意思是,在商品展示的時候做一個詢價的按鈕,你們根據客戶的需求數量,在線給予報價。
朋友:對的。
我:那你們平時的庫存是怎么流轉的?
朋友:我們也就六七十平的辦公室,就沒有什么倉庫,只在辦公室存放一些耗材和幾部機器。我們是做代理的,客戶有需求我們直接從廠家拿貨發貨。
我:我明白了,也就是相當於代銷模式,然后你們主要負責維護。
朋友:可以這么理解。
我:客戶詢價,然后我們報價。接下來的流程也就是,客戶若對報價沒有異議,客戶就通過報價單生成訂單,支付,我們這邊發貨。
朋友:對,但是如果客戶對報價有異議,最好能給客戶討價還價的空間,畢竟做生意不容易,讓點利,多走一單也是銷量嘛。
我:這樣吧,我在報價單下面加一行文字說明,若對價格有異議,歡迎來電咨詢吧。
朋友:這樣也行。
我:既然你們的業務主要是銷售和維修,有沒有想過提供一個在線報修的入口?
朋友:這個點子好,你看看幫實現一下。
我:那你看看還有什么要實現的嗎?
朋友:先這些吧,以后想到了,再跟你說。
3. 計划
像開篇所說,理論很重要但實踐出真知。
所以計划分兩步走:
第一步:使用DDD的思想對案例進行剖析。
第二步:使用.Net上比較流行的DDD開源框架ABP來實現案例。
初學DDD,請大家不吝賜教,感激不盡。
參考資料
《實現領域驅動設計》
《Patterns, Principles, and Practices of Domain-Driven Design》