程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 領域驅動設計實踐——流水號生成器(下)(2)

領域驅動設計實踐——流水號生成器(下)(2)

編輯:Delphi

其中,代碼是固定不變的,流水號會自動遞增,日期一般是當前系統日期(固定格式,比如YYYYMM、YYYYMMDD),另外當日期變化時再重置流水號。寫到這裡,我們終於找到了一個重要概念:編號規則(Number Rule)。編號規則定義了多個連續的段(Number Part),各段組合起來就生成了一個編號。正如下圖所示:

圖2 分析模型

在實際的應用當中,流水號的規則可能很復雜,也許要支持數字(如‘0000’-‘9999’)、英文字母(如‘A' - 'Z'),甚至是一些自定義的字符(如‘0’-‘Z’)的組合。既然這樣,我們可以提取一個抽象概念:序列(Sequence)。如在卡號規則當中規定遇4跳過等等就表示卡號是由除4以外的其他阿拉伯數字組成的序列。{ 序列可以考慮用任意進制的計算器來實現:) }

2. 領域模型

結合上面的領域知識,我設計了新的領域模型:

圖2 編號規則領域模型(V2)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved