所以,讓我們說我們必須設計一個圖書館管理系統。現在,這可以通過編寫無處不在的語言的域驅動設計原則來完成,然後找出有界的上下文,創建聚合根並最終具有書籍,用戶,作者等的對象模型。如何在設計通用系統時應用領域驅動設計原則?
但是,如果我們必須根據Salesforce或Sharepoint設計一個通用系統(具有設計和創建自定義表單和工作流程的功能)。所以,首先我們要創建一個通用的系統,它可以用來實現圖書館管理系統或任何其他系統,比如人力資源管理系統等等。
我們是否仍然可以在設計通用系統時應用領域驅動設計原則?如果,是的,那麼在無處不在的語言中,我們應該列出書籍,用戶,作者,僱員,部門等域對象,還是應該列出通用對象/名稱值對/哈希表。因爲,這個通用系統可以用來實現任何其他領域特定的系統。
換句話說,如何將域驅動設計原則應用於創建通用系統?以後可以用它來實現其他領域特定的系統。
但問題是,如果你正在設計一個通用系統,你會把無處不在的語言放在什麼位置。您的定位沒有域名。 – Mohit
總有一個領域,在這種情況下,它恰好是一個通用/抽象/技術領域。您可以將無處不在的語言中可能通用的術語,但不必具有技術含義,例如哈希表這樣的術語。 – eulerfx
所以你的意思是你可以使用像PrimaryEntity,ChildEntity或GenericResource或類似的東西來表示一個通用的實體。但是,不應該使用Hashtable或Arraylist,因爲這些都是技術特定的。 – Mohit