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

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ### 重構工具的實用標準(Practical Criteria ) 工具之所以被創造出來,是為了幫助人們完成工作。如果工具不能適應人們的工作方式,人們就不會使用它。重構工具的最重要標準(要求〕就是:和其他工具共同集成出重構過程(refactoring process )。 **速度(Speed)** 重構前的分析和必要調整,可能會耗費較多時間,因為它們有可能非常復雜。工具設計者必須考慮這些前期工作對時間和準確性(accuracy)的影響。如果重構前需要大量準備工作,程序員就不會使用自動化重構工具,他們寧可手工進行重構。是 的,開發速度總是很重要的。在開發Refactoring Browser 的過程中,有數個重構手 法并沒有被我們實現出來,正是因為我們無法在可被接受的時間內安全實現它們。 但是我們的工作仍然頗有成績,絕大多數重構都可以在極短時間內以極高的準確度完成。計算器科學家總是但愿能夠覆蓋「特定函數無法處理之(所有〕邊界情況」,但事實上絕大多數程序并不涉及那些邊界情況。因此,簡單而快速的作法便可美好地勝任這些工作。 如果重構前的分折需要花費太長時間,一個簡單的解決辦法就是:直接詢問程序員你所需要的信息。這種辦法把「保證準確性(accuracy)」的責任交給了程序員, 于是分析過程可以進行得更快一些。很多時候程序員其實都知道必要信息。盡管這種辦法可能不夠安全(因為程序員有可能犯錯),但「錯誤」的責任也落了一部分在程序員肩上。諷刺的是,這竟然使程序員更有可能使用這些工具,因為他們無需倚賴程序的探詢(錯誤嘗試,heuristic )來收集信息。 **Undo(撤銷)** 「自動化重構」令開發者得以采用探索方式(exploratory approach )進行設計。你 可以試著把代碼移到他處,觀察新設計方案是否有效。由于我們假設重構都能夠保持程序的原本行為,所以反向重構(亦即對原重構的撤銷)也應該不影響程序的原本行為。Refactoring Browser 的早期版本并沒有Undo(撤銷)功能,這使用戶無法 對重構充滿信心。重構的撤銷相當困難。但是很多時候我們偏偏必須找出程序重構前的版本,重新開始,這可真夠討厭的。于是我們后來為Refactoring Browser 加上 了Undo 功能,又克服了一個障礙。現在,我們可以放心嘗試,不會遭受任何懲罰, 因為我們總是可以回到原先的任何一個版本。我們可以建立新的class、搬移函數、 觀察代碼的行為,而后又改變想法,走另一個完全不同的方向。這一切都可以非常快速地完成。 **與其他工具集成(Integrated with Tools)** 過去十年以來,集成開發環境(IDE)已經成為絕大多數開發項目的核心工具。IDE 將編輯器、編譯器、連接器、調試器以及程序開發所需的其他所有工具,都集成于一起,開發者可以在同一個環境中極方便地使用所有這些工具。Refactoring Browser 早期版本是一個獨立于標準Smalltalk 開發工具之外的獨立工具,我們發現根本沒人使用這樣的產品,就連我們自己都不用。但是把重構功能直接集成到Smalltalk Browser之后,我們就開始經常使用它。「是否就在吾人指尖」造成了這 一切的不同。
                  <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>

                              哎呀哎呀视频在线观看