<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之旅 廣告
                ### 這些重構準則有多成熟 任何技術作家都會面對這樣一個問題:該在何時發表自己的想法?發表愈早,人們愈快能夠運用新想法、新觀念。但只要是人,總是不斷在學習。如果過早發表半生不熟的想法,這些思想可能并不完善,甚至可能給那些嘗試采用它們的人帶來麻煩。 重構的基本技巧——小步前進、頻繁測試——已經得到多年的實踐檢驗,特別是在Smalltalk社群中。所以,我敢保證,重構的這些基礎思想是非常可靠的。 本書中的重構準則是我自己使用重構的筆記。是的,我全都用過它們。但是「使用某個重構手法」和「將它濃縮成可在這里給出之作法步驟」是有區別的。特別是在一些十分特殊的情況下,偶爾你會看見一些問題突然涌現。我并沒有讓很多人進行我所寫下的這些技術步驟以圖發現這一類問題。所以,使用重構的時候,請隨時知道自己在做什么。記住,就像看著食譜做菜一樣,你必須讓這些重構準則適應你自己的情況。如果你遇上一個有趣的問題,請以電子郵件告訴我,我會試著把你的情況告訴其他人。 關于這些重構手法,另一個需要記住的就是:我是在「單進程」(single-procerss)軟件這一大前提下考慮并介紹它們的。我很希望看到有人介紹用于并發式(concurrent)和分布式(distributed)程序設計的重構技術。這樣的重構將是完全不同的。舉個例子,在單進程軟件中,你永遠不必操心多么頻繁地調用某個函數,因為函數的調用成本很低。但在分布式軟件中,函數的往返必須被減至最低限度。在這些特殊編程領域中有著完全不同的重構技術,這己超越本書主題。 許多重構手法,例如 Replace Type Code with State/Strategy 和 Form Template Method 都涉及「向系統引入模式(patterns)」。正如GoF(Gang of Four,四巨頭)的經典著作中所說,『設計模式……為你的重構行為提供了目標」。模式和重構之間有著一種與生俱來的關系。模式是你希望到達的目標,重構則是到達之路。本書并沒有提供「助你完成所有知名模式」的重構手法,甚至連的23 個知名模式[Gang of Four]都沒有能夠全部覆蓋。這也從某個側面反映出這份名錄的不完整。我希望有一天這個缺陷能夠被填補。 運用重構的時候,請記住:它們僅僅是一個起點。毋庸置疑,你一定可以找出個中缺陷。我之所以選擇現在發表它們,因為我相信,盡管它們還不完美,但的確有用。我相信它們能給你一個起點,然后你可以不斷提高自己的重構能力。這正是它們帶給我的。 隨著你用過愈來愈多的重構手法,我希望,你也開始發展屬于你自己的重構手法。 但愿本書例子能夠激發你的創造力,并給你一個起點,讓你知道從何入手。我很清楚現實存在的重構,比我這里介紹的還要多得多。如果你真的提出了一些新的重構手法,請給我一封電子郵件。
                  <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>

                              哎呀哎呀视频在线观看