<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 功能強大 支持多語言、二開方便! 廣告
                # (五):重構有助于性能優化么? 項目從初次開發到現在,已經快3年了。期間,有N個工程師參與過。 需求方面:增加減少,反反復復,無數次;人力方面:增加減少,不穩定;時間方面:功能開發著急上線,Bug開發緊急修復。 因此,代碼臃腫,問題頗多。 自從畢業加入到項目,深感代碼質量問題對項目開發效率的影響,因此經常會對項目進行“重構”和“優化”。 主要經歷了2次大的重構和無數次小的改進。 今天,特別整理下,希望今后可以做得更好。 **重構事項** **1.統一標準。** ?包、類、方法、字段等命名按照Java標準規范那樣,統一命名。 **2.重新組織代碼。** a.?將項目代碼,按照業務邏輯等原則,重新組織到不同的包中。 b. 按照一定的原則,調整類中的方法。 比如對于數據訪問層Dao的方法,嚴格按照查詢、增加、修改、刪除這樣的順序組織。 而且,使用和修改頻率高的代碼,放在靠前的位置。 **3.增加必要的注釋。** 對于那些業務比較復雜,容易混淆的代碼,加上清晰簡潔的注釋。 **4.刪除無用的代碼。** 將廢棄的功能代碼,無用的注釋,先用@Deprecated標記,過段時間,然后徹底刪除。 **5.提高代碼復用。** Dao層:編寫一個實現了常用CRUD功能的BaseDao。 工具層:對常用的工具代碼,進行整理,統一到工具庫中。 **6.清理數據庫。** a.將數據庫中沒有用到的表、字段全部刪除。 b.優化表的數據類型。比如將longtext的字段,修改為varchar(20)。 c.規范化表和字段的命名。比如用戶表用User,用戶地址用userAddress表示。 同時,Java代碼和實體配置文件,盡可能與數據庫表相統一。 **參考建議** 更多重構和優化事項,不再贅述。 有興趣的同學,可以看看《代碼大全》、《重構》、《編寫可讀代碼的藝術》這3本書。 **重構有助于性能優化么** 我只能說,有一定的幫助。 a.重復代碼比較少,注釋清晰,命名合理的代碼,看起來“賞心悅目”。 本質上,不太可能提高系統性能,但是算得上是性能優化的準備工作。 項目重構后,開發更有效率,Bug更少,這樣才可能有更多的時間去做性能優化。 b.去掉數據庫表中無用的字段,這還是有點作用的。 至少,在SQL查詢的時候,比如select *,會少查詢一些字段。 **見仁見智** 重構是否有助于性能優化,是一個見仁見智的問題。 根據我有限的重構和優化經驗,我只能說,“重構有助于優化性能,但作用有限”。 打個比喻,當你學畫畫,想要畫一個蘋果的時候,“把蘋果洗干凈”是否有助于你畫出一個逼真的蘋果呢? “把蘋果洗干凈”就是代碼重構的過程。 “畫出一個逼真的蘋果”就是性能優化的過程。 你是怎么看待這個問題的呢?愿聞其詳...
                  <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>

                              哎呀哎呀视频在线观看