[英]Builder vs Facade design pattern
我遇到了不同的創作和結構設計模式。
在構建器中,它分為三個部分,主管將決定執行順序。
當我瀏覽外觀模式時,它也遵循相同的方法,即動作的順序。
那么這兩種模式有什么區別? 當Facade模式也指對象的創建和執行順序時,它如何屬於結構設計模式?
嗯,根據dofactory ,Facade是:
為子系統中的一組接口提供統一的接口。 Façade定義了更高級別的界面,使子系統更易於使用
和生成器:
將復雜對象的構造與其表示分開,以便同一構造過程可以創建不同的表示。
因此,從描述中可以很明顯地看出Facade模式沒有提供構造新對象的方法。 Facade是簡化的高級界面,可用於訪問一組子界面。 Builder描述了一種創建對象的方法。 例如, StringBuilder
類的唯一目的是提供一種創建新字符串的有效方法(是的,它基於Builder模式)。
外觀只是簡化對象模型中的調用的一種方式,因此您不必每次要執行一組操作時都編寫大量代碼。 例如,您可能編寫了一個Facade來簡化某些事情,該東西必須調用多個對象和方法才能執行任務。
有關更多信息: 請參閱答案
生成器只是一種用於簡化一個類或一組類的構造邏輯的外觀。 它的目的通常是提供一組清晰的方法,以使您清楚如何構造目標對象,並使結構流暢。
builder.WithFirstName("John").WithLastName("Smith").WithStandardCompanyAddress().Build();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.