您好,登錄后才能下訂單哦!
本篇內容介紹了“Prototype模式的適用場景是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
Prototype模式的適用場景為:當一個系統應該獨立于它的產品創建、構成和表示,而且
先別管那個“而且”,只看前半句。換個說法就是將構建產品的部分從系統的其他功能中分離出來。如果只看這一點的話,抽象工廠模式同樣適合。好在后面有一個"而且”,將這一條和下面三個條件(實際上是三個中的一個即可)組合起來構成了原型模式的應用場景。
? 當要實例化的類是在運行時刻指定時,例如,通過動態裝載;
簡單地說,動態裝載就是在程序執行時通過數據(可以時保存在文件中的,或者來自通訊數據的)生成產品。與之相對的就是靜態裝載:產品是通過硬編碼生成的。這時對象類型是在編碼階段就決定了的。例如抽象工廠生成對象時,創建動作雖然是在程序運行時被執行,但生成對象的種類等信息確是在編碼階段就已經定下來了。
? 或者為了避免創建一個與產品類層次平行的工廠類層次時;
使用抽象工廠或者工廠方法構建產品時,需要和產品種類平行的Factory或Creator類。原型模式通過克隆已有對象來產生新對象,可以作為回避這個缺點的一個選項。
? 或者當一個類的實例只能有幾個不同狀態組合中的一種時。建立相應數目的原型并克隆它們可能比每次用合適的狀態手工實例化該類更方便一些。
如果我們可以只是通過對象組合就可以生成滿足需求的實例時,就可以使用原型模式,以克隆已有對象的方式來構建新實例,而不是構建新類。
“Prototype模式的適用場景是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。