Loading AI tools
来自维基百科,自由的百科全书
在軟體工程中,建立型模式是處理對象建立的設計模式,試圖根據實際情況使用合適的方式建立對象,因為基本的對象建立方式可能會導致設計上的問題,或增加設計的複雜度。建立型模式的關注點是如何建立對象,其核心思想是要把對象的建立和使用相分離[1]。
建立型模式由兩個主導思想構成。一是將系統使用的具體類封裝起來,二是隱藏這些具體類別的實例建立的方式。[2]
建立型模式又分為對象建立型模式和類建立型模式。對象建立型模式處理對象的建立,類建立型模式處理類的建立。詳細地說,對象建立型模式把對象建立的一部分推遲到另一個對象中,而類建立型模式將它對象的建立推遲到子類中。[3]
建立型模式旨在將系統與它的對象建立、結合、表示的方式分離。這些設計模式在對象建立的類型、主體、方式、時間等方面提高了系統的靈活性。[4]
現代軟體工程更加依賴對象的組合,而不是類的繼承,強調從寫死的行為轉變到定義一組基本行為來組合成複雜的行為[5]。寫死的行為不夠靈活,因為如果想要改變設計的一部分,需要通過重寫或者重新實現才能完成。另外,寫死沒有提高重用性,而且難以跟蹤錯誤。由於這些原因,建立型模式比寫死的行為更有用。建立型模式使設計變得更靈活,提供了不同的方式,從代碼中移除了對需要實例化的具體類的參照[6]。換句話說,這些模式增強了對象和類之間的獨立性。
在以下情況中,可以考慮應用建立型模式:
建立型設計模式的一些例子如下:
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.