<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>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ## 包的組織 我認為一個好的架構關鍵因素之一是代碼/包的組織:程序員瀏覽源代碼遇到的第一件事情就是包結構。一切從它流出,一切依賴于它。 我們能夠辨別出將應用程序封裝進入包(package)的2個路徑: * 按層分包:每一個包(package)中包含的項通常不是彼此密切相關的。這樣包的內聚性低、模塊化程度低,包之間偶合度高。因此,編輯某個特性要編輯來自不同包的文件。另外,單次操作幾乎不可能刪除掉某個功能特性。 * 按特性分包:用包來體現特性集。把所有相關某一特性(且僅特性相關)的項放入一個包中。這樣包的內聚性高,模塊化程度高,包之間偶合度低。緊密相關的項放在一起。它們沒有分散到整個應用程序中。 我的建議是去掉按特性分包,會帶來的好處有以下主要幾點: * 模塊化程度更高 * 代碼導航更容易 * 功能特性的作用域范圍最小化了 如果與功能特性團隊一起工作(就像我們在@SoundCloud的所作所為),也會是非常有趣的事情。代碼的所有權會更容易組織,也更容易被模塊化。在許多開發人員共用一個代碼庫的成長型組織當中,這是一種成功。 ![](https://box.kancloud.cn/2015-09-21_55ff6fea73d4a.jpg%3F_%3D18072)? 如你所見,我的方法看起來就像按層分包:這里我可能會犯錯(例如,在“users”下組織一切),但在這種情況下我會原諒自己,因為這是個以學習為目的的例子,而且我想顯示的是清晰架構方法的主要概念。領會其意,切勿盲目模仿:-)。
                  <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>

                              哎呀哎呀视频在线观看