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

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                * [微信 Android 模塊化架構重構實踐(上)](https://cloud.tencent.com/community/article/441423) * [微信 Android 模塊化架構重構實踐(下](https://cloud.tencent.com/community/article/794491) 這兩篇文章是微信團隊分享,講述了在業務擴張中,app整體的架構演化。需要著重一提的是,榮耀當前的架構 跟他們V3.x時代的架構 基本一致:根據業務、功能模塊拆分 共用 同一層中間件 ,然后由這層中間件 來打包所有 基礎的組件庫,中間層之上的模塊層,在橫向上沒有依賴關系,需要跨包跳轉的地方可以ARouter 這樣的路由框架來解耦,這樣看起來很美好,實際上也確實能實現組件化、模塊化的預期。 但需要注意的是,在實際操作中,如果頂層module1 需要用到頂層模塊module2中的東西或功能,他們不涉及跳轉、彼此橫向上也沒有依賴,一般我們采用了簡潔的做法,將module2中 被需要的功能代碼抽出來,下沉到 中間件這一層,從短期上看 這樣確實能達到到目的,而且也十分快捷省事。但是從持續迭代來看,類似于這樣的 代碼下沉 操作會越來越來多,久之,也會遇到 基礎中間層過于沉重的技術債務。 微信團隊采用了 "pins結構" 的解決方案,通過對gradle的操作,將原來的module結構 轉變成 類似 project的樣式,從他們的最終結果來看,也確實能達成預期的目的。但"pins結構"對我們說,這樣的跨越、學習成本不算小。如何更好的處理,因代碼邊界模糊造成 中間層過于沉重的問題,也值得后續進一步思考。 ARouter里面提出了 暴露服務的理念與“pins結構”類似,但實際操作,簡單很多,后續會嘗試這方面的工作。至于 “代碼邊界約束”,這就跟 “單一職責”一樣,在復雜系統中,很難做到統一的定義,但也有值得思考,去做一個適合我們當前階段的方案。 * [開源最佳實踐:Android平臺頁面路由框架ARouter](https://yq.aliyun.com/articles/71687?t=t1) 這邊文章是 ARouter項目的作者分享的一篇文章,全文從 開發中遇到的痛點困境出發,講述了ARouter的各個功能開發的初衷,可能在最開始你可能只會用到 下面這句用于多模塊的跳轉: ~~~ ARouter.getInstance().build("/test/activity").navigation(); ~~~ 品讀完 這邊文章后,你會從更深的層次上去去更好的利用ARouter,從而不斷的提升代碼整體結構,。
                  <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>

                              哎呀哎呀视频在线观看