看完這篇,你就會了解什麼是 DDD
05-13
DDD 是領域驅動設計,這個名字看起來很高大上,十分適合非開發背景的產品同學用來裝13。但是 DDD 是個什麼玩意呢?
其實很簡單,每個公司都有不同的部門,每個部門都有自己要做的事,比如銷售部門、技術部門、編輯部門。老闆沒必要讓每個員工既能當銷售,又能敲代碼,還能舞文弄墨,因為這樣的人太難招了。而如果把公司劃分為若干部門,那麼老闆只需要招專業的人做專業的事就行,難度明顯降低。DDD 的思想也一樣,開發同學在設計系統的時候,會分為若干層,每一層都有自己專門負責的事情,所謂「術業有專攻」。這樣做的好處是,系統的擴展性比較高。- 就診過程中,我們會接觸到許多人,如挂號員、門診專家、收費員、藥房藥師,這些人都承擔不同的角色。挂號員負責出售專家的號,門診專家負責給你看病,收費員負責收費、藥師負責取葯。
- 我們非常清楚就診的目標,就是「為了查自己到底什麼病」。
- 整個就診過程,由一系列滿足規範要求的動作來完成就診的目標,比如門診專家需要給我們一個病歷記錄和藥方,藥師需要遵循專家輸出的藥方給我們取葯。
- 人:病人類型(哪個科室的病人)
- 地方:病人(在醫院的角色是病人)
- 東西:專家(診治方的角色是醫生)
- 事:病歷記錄
- 去掉病歷記錄和專家的關聯,改為查詢。即:通過專家來查詢病歷記錄。因為一個專家可能會輸出 n 份病歷記錄。但此時需要讓專家關聯一個病人就診時的狀態,因為我們想查詢的是病人就診時的病歷記錄,而不是現在的病歷記錄。
- 去掉病人和專家之間的關聯,改為查詢。
推薦閱讀:
※光學字元識別(OCR)類產品分析
※互聯網簡訊-20180309
※如何成為BAT瘋搶的產品實習生?
※《啟示錄-打造用戶喜愛的產品》讀書筆記
※概念篇(1): 什麼是PV、UV、IP、VV、CV?
TAG:產品經理 |