-1

我找不到服務對象設計模式的任何定義。服務對象,交易腳本和策略設計模式是否相同?

事務腳本設計圖案

通過組織設備程序的業務邏輯,其中每個過程處理從呈現的單個請求。

戰略設計模式

定義一系列的算法,封裝每一個,使得它們可以互換。策略可以讓算法獨立於使用它的客戶端。

它們是否相似?

+2

不,他們不是。你爲什麼認爲他們是?你覺得這兩句話意味着什麼?你有沒有更多地瞭解這兩種模式來理解它們?除了「否」之外,你對這個問題的期望是什麼? –

回答

1

這是服務層模式的定義:http://martinfowler.com/eaaCatalog/serviceLayer.html

服務層描述了系統的使用情況。這些用例是以事務腳本方式實現的。但是,交易腳本模式是一種不同的野獸 - 它是組織系統業務邏輯的一種方式。所以雖然它們是相似的,但意圖是不同的。您可以將業務邏輯實現爲Active Record或Domain Model,但服務層仍然類似於交易腳本。

策略模式旨在封裝可交換算法,這些算法在系統用例的內部使用。

我強烈推薦閱讀經典的「企業應用架構模式」一書,以便更好地把握這些模式。