我有一天在格雷格揚的屏幕上播放了一段關於持久化對象的所有狀態轉換的代碼,而不是保存時的狀態,然後加載它「重放」所有這些消息以獲取當前狀態。這似乎是一個非常有趣的想法,但我堅持這個特定的東西被稱爲!我想詳細瞭解它,但如果沒有真正的名稱,我會遇到麻煩。DDD屏幕投射問題?
任何人都可以啓發我嗎?
抓屏是@http://www.infoq.com/presentations/greg-young-unshackle-qcon08
我有一天在格雷格揚的屏幕上播放了一段關於持久化對象的所有狀態轉換的代碼,而不是保存時的狀態,然後加載它「重放」所有這些消息以獲取當前狀態。這似乎是一個非常有趣的想法,但我堅持這個特定的東西被稱爲!我想詳細瞭解它,但如果沒有真正的名稱,我會遇到麻煩。DDD屏幕投射問題?
任何人都可以啓發我嗎?
抓屏是@http://www.infoq.com/presentations/greg-young-unshackle-qcon08
由邁克爾·佩裏的評論將其稱爲歷史建模。
他還表示,他已經「確定了一系列的規則和歷史建模框架」,並提供了幾個環節:(我沒有足夠的代表處發表他們倆)
http://correspondence.codeplex.com/
我沒有親自研究或使用過渡模型,但它確實聽起來很有趣。
稍微偏離正切...... Rocky Lhotka在他的CSLA Business Object framework中實現了一種他稱之爲n級撤銷(其他稱爲Multilevel Undo)的東西,但這僅適用於內存變化的歷史記錄和(即我意識到)不會持續到數據庫中。
DDD的人傾向於不認爲CSLA很高,但其中包含的一些想法和實現絕對值得研究。
Martin Fowler將此稱爲Event Sourcing。格雷格年輕人甚至references Fowler在他的series on Distributed Domain Driven Design,其中他澄清了有關介紹的一些細節;你可能想閱讀它。