<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                [TOC] # 分類 我們通常說的 23 中經典設計模式可以通過下表一目了然: | 分類 | 設計模式 | | --- | --- | | 創建型 | 工廠方法模式(Factory Method)、抽象工廠模式(Abstract Factory)、 建造者模式(Builder)、原型模式(Prototype)、單例模式(Singleton) | | 結構型 | 適配器模式(Adapter)、橋接模式(Bridge)、組合模式(Composite)、 裝飾器模式(Decorator)、門面模式(Facade)、享元模式(Flyweight)、 代理模式(Proxy) | | 行為型 | 解釋器模式(Interpreter)、模板方法模式(Template Method)、 責任鏈模式(Chain of Responsibility)、命令模式(Command)、 迭代器模式(Iterator)、調解者模式(Mediator)、備忘錄模式(Memento)、 觀察者模式(Observer)、狀態模式(State)、策略模式(Strategy)、 訪問者模式(Visitor) | # 六大原則 * 開閉原則(Open Close Principle) 開閉原則就是說對擴展開放,對修改關閉。在程序需要進行拓展的時候,不能去修改原有的代碼,實現 一個熱插拔的效果。所以一句話概括就是:為了使程序的擴展性好,易于維護和升級。想要達到這樣的 效果,我們需要使用接口和抽象類,后面的具體設計中我們會提到這點。 * 里氏代換原則(Liskov Substitution Principle) 里氏代換原則(Liskov Substitution Principle LSP)面向對象設計的基本原則之一。 里氏代換原 則中說,任何基類可以出現的地方,子類一定可以出現。 LSP 是繼承復用的基石,只有當衍生類可以 替換掉基類,軟件單位的功能不受到影響時,基類才能真正被復用,而衍生類也能夠在基類的基礎上增 加新的行為。里氏代換原則是對“開\-閉”原則的補充。實現“開\-閉”原則的關鍵步驟就是抽象化。而 基類與子類的繼承關系就是抽象化的具體實現,所以里氏代換原則是對實現抽象化的具體步驟的規范。 * 依賴倒轉原則(Dependence Inversion Principle) 這個是開閉原則的基礎,具體內容:針對接口編程,依賴于抽象而不依賴于具體。 * 接口隔離原則(Interface Segregation Principle) 這個原則的意思是:使用多個隔離的接口,比使用單個接口要好。還是一個降低類之間的耦合度的意思, 從這兒我們看出,其實設計模式就是一個軟件的設計思想,從大型軟件架構出發,為了升級和維護方便。 所以上文中多次出現:降低依賴,降低耦合。 * 迪米特法則(最少知道原則)(Demeter Principle) 為什么叫最少知道原則,就是說:一個實體應當盡量少的與其他實體之間發生相互作用,使得系統功能 模塊相對獨立。 * 合成復用原則(Composite Reuse Principle) 原則是盡量使用合成/聚合的方式,而不是使用繼承。 ![](https://img.kancloud.cn/c6/1a/c61ae6ed52dd46bfa2333590a0f3d068_880x854.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看