設計模式--原型模式(Prototype Pattern)

定義:

用原型實例制定建立對象的種類,並經過複製這些原型建立新的對象。函數

使用場景:

  • 類初始化須要消化很是多的資源,這個資源包括數據、硬件資源等,經過原型拷貝避免這些消耗;
  • 經過 new 產生一個對象須要很是繁瑣的數據準備或訪問權限,則能夠使用原型模式;
  • 一個對象須要提供給其餘對象訪問,並且各個調用者可能都須要修改其值時,能夠考慮使用原型模式拷貝多個對象供調用者使用,即保護性拷貝。

UML類圖:

淺複製 & 深複製

優勢:

原型模式是在內存二進制流的拷貝,要比直接new一個對象性能好不少,特別是要在一個循環體內產生大量的對象時,原型模式能夠更好地體現其優勢。性能

缺點:

這既是它的優勢也是缺點,直接在內存中拷貝,構造函數是不會執行的,在實際開發當中應該注意這個潛在的問題。優勢就是減小了約束,缺點也是減小了約束,須要你們在實際應用時考慮。cdn

相關文章
相關標籤/搜索