乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      創(chuàng)建型模式

       新進(jìn)小設(shè)計 2021-07-25

      title: "[設(shè)計模式]創(chuàng)建型模式"
      date: 2016-03-07 18:05
      tags:

      • 設(shè)計模式
      • design
      • pattern
      • creational
      • factory
      • method
      • abstract
      • singlton
        categories:
      • 技術(shù)

      摘要:設(shè)計模式并不能減小系統(tǒng)的復(fù)雜度,并不能減少if...else...。它只是幫助把代碼放在適當(dāng)?shù)奈恢?,以便在需求更改時改動的代碼最少。

      簡單工廠模式

      • 簡單工廠模式的要點在于:當(dāng)你需要什么,只需要傳入一個正確的參數(shù),就可以獲取你所需要的對象,而無須知道其創(chuàng)建細(xì)節(jié)。
      • 簡單工廠模式最大的優(yōu)點在于實現(xiàn)對象的創(chuàng)建和對象的使用分離,將對象的創(chuàng)建交給專門的工廠類負(fù)責(zé),但是其最大的缺點在于工廠類不夠靈活,增加新的具體產(chǎn)品需要修改工廠類的判斷邏輯代碼,而且產(chǎn)品較多時,工廠方法代碼將會非常復(fù)雜。
      • 簡單工廠模式適用情況包括:工廠類負(fù)責(zé)創(chuàng)建的對象比較少;客戶端只知道傳入工廠類的參數(shù),對于如何創(chuàng)建對象不關(guān)心。

      SimpleFactory

      工廠方法模式

      本質(zhì)上說就是產(chǎn)品創(chuàng)建功能的下放,交給子類去做。

      • 工廠方法模式是簡單工廠模式的進(jìn)一步抽象和推廣。由于使用了面向?qū)ο蟮亩鄳B(tài)性,工廠方法模式保持了簡單工廠模式的優(yōu)點,而且克服了它的缺點。在工廠方法模式中,核心的工廠類不再負(fù)責(zé)所有產(chǎn)品的創(chuàng)建,而是將具體創(chuàng)建工作交給子類去做。這個核心類僅僅負(fù)責(zé)給出具體工廠必須實現(xiàn)的接口,而不負(fù)責(zé)產(chǎn)品類被實例化這種細(xì)節(jié),這使得工廠方法模式可以允許系統(tǒng)在不修改工廠角色的情況下引進(jìn)新產(chǎn)品。
      • 工廠方法模式的主要優(yōu)點是增加新的產(chǎn)品類時無須修改現(xiàn)有系統(tǒng),并封裝了產(chǎn)品對象的創(chuàng)建細(xì)節(jié),系統(tǒng)具有良好的靈活性和可擴(kuò)展性;其缺點在于增加新產(chǎn)品的同時需要增加新的工廠,導(dǎo)致系統(tǒng)類的個數(shù)成對增加,在一定程度上增加了系統(tǒng)的復(fù)雜性。

      FactoryMethod

      抽象工廠模式

      最重要的概念:產(chǎn)品族
      抽象工廠模式適用情況包括:

      • 一個系統(tǒng)不應(yīng)當(dāng)依賴于產(chǎn)品類實例如何被創(chuàng)建、組合和表達(dá)的細(xì)節(jié);
      • 系統(tǒng)中有多于一個的產(chǎn)品族,而每次只使用其中某一產(chǎn)品族;
      • 屬于同一個產(chǎn)品族的產(chǎn)品將在一起使用;
      • 系統(tǒng)提供一個產(chǎn)品類的庫,所有的產(chǎn)品以同樣的接口出現(xiàn),從而使客戶端不依賴于具體實現(xiàn)。

      AbatractFactory

      建造者模式

      • 在建造者模式的結(jié)構(gòu)中引入了一個指揮者類,該類的作用主要有兩個:一方面它隔離了客戶與生產(chǎn)過程;另一方面它負(fù)責(zé)控制產(chǎn)品的生成過程。指揮者針對抽象建造者編程,客戶端只需要知道具體建造者的類型,即可通過指揮者類調(diào)用建造者的相關(guān)方法,返回一個完整的產(chǎn)品對象。
      • 建造者模式適用情況包括:需要生成的產(chǎn)品對象有復(fù)雜的內(nèi)部結(jié)構(gòu),這些產(chǎn)品對象通常包含多個成員屬性;需要生成的產(chǎn)品對象的屬性相互依賴,需要指定其生成順序;對象的創(chuàng)建過程獨(dú)立于創(chuàng)建該對象的類;隔離復(fù)雜對象的創(chuàng)建和使用,并使得相同的創(chuàng)建過程可以創(chuàng)建不同類型的產(chǎn)品。
      • 建造者模式所創(chuàng)建的產(chǎn)品一般具有較多的共同點,其組成部分相似,如果產(chǎn)品之間的差異性很大,則不適合使用建造者模式,因此其使用范圍受到一定的限制。

      Builder

      單例模式

      (略)

      原型模式

      關(guān)鍵字: - clone();;

      區(qū)分

      1. 抽象工廠模式與建造者模式相似,都可以創(chuàng)建組復(fù)雜對象。主要的區(qū)別是Builder模式著重于一步步構(gòu)建一個復(fù)雜對象。而Abstract Factory著重于多個系列的產(chǎn)品對象。Builder在最后一步返回產(chǎn)品(封裝了產(chǎn)品的構(gòu)建),而對于Abstract Factory來說,產(chǎn)品是立即返回的。

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多