<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之旅 廣告
                23.3 門面模式的應用 23.3.1 門面模式的優點 門面模式有如下優點。 ● 減少系統的相互依賴 想想看,如果我們不使用門面模式,外界訪問直接深入到子系統內部,相互之間是一種強耦合關系,你死我就死,你活我才能活,這樣的強依賴是系統設計所不能接受的,門面模式的出現就很好地解決了該問題,所有的依賴都是對門面對象的依賴,與子系統無關。 ● 提高了靈活性 依賴減少了,靈活性自然提高了。不管子系統內部如何變化,只要不影響到門面對象,任你自由活動。 ● 提高安全性 想讓你訪問子系統的哪些業務就開通哪些邏輯,不在門面上開通的方法,你休想訪問到。 23.3.2 門面模式的缺點 門面模式最大的缺點就是不符合開閉原則,對修改關閉,對擴展開放,看看我們那個門面對象吧,它可是重中之重,一旦在系統投產后發現有一個小錯誤,你怎么解決?完全遵從開閉原則,根本沒辦法解決。繼承?覆寫?都頂不上用,唯一能做的一件事就是修改門面角色的代碼,這個風險相當大,這就需要大家在設計的時候慎之又慎,多思考幾遍才會有好收獲。 23.3.3 門面模式的使用場景 ● 為一個復雜的模塊或子系統提供一個供外界訪問的接口 ● 子系統相對獨立——外界對子系統的訪問只要黑箱操作即可 比如利息的計算問題,沒有深厚的業務知識和扎實的技術水平是不可能開發出該子系統的,但是對于使用該系統的開發人員來說,他需要做的就是輸入金額以及存期,其他的都不用關心,返回的結果就是利息,這時候,門面模式是非使用不可了。 ● 預防低水平人員帶來的風險擴散 比如一個低水平的技術人員參與項目開發,為降低個人代碼質量對整體項目的影響風險,一般的做法是“畫地為牢”,只能在指定的子系統中開發,然后再提供門面接口進行訪問操作。
                  <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>

                              哎呀哎呀视频在线观看