<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      享受代碼,享受人生

      SOA is an integration solution. SOA is message oriented first.
      The Key character of SOA is loosely coupled. SOA is enriched
      by creating composite apps.
        博客園  :: 首頁  :: 新隨筆  :: 聯(lián)系 :: 訂閱 訂閱  :: 管理

      重構---Who are you?!

      Posted on 2006-02-05 21:25  idior  閱讀(6018)  評論(9)    收藏  舉報

              剛剛看了小陸的我對系統(tǒng)重構的理解有些想法,就隨便激揚一下文字,談談自己對重構的片面理解。               

                
      Tip   不要當你需要新的功能的時候,或者原來的程序出了Bug,你才想起重構。


             什么時候開始重構?這是首先需要考慮的問題。一個功能沒有完成就開始重構嗎?不是。所有功能都完成開始重構嗎?更不是。重構是一項貫穿我們程序開發(fā)的工作,當一個功能完成(能夠正常工作,通過單元測試)的時候就應該開始重構。既然都通過測試了,還要重構?沒事找事啊你?呵呵,就是因為這個“沒事找事”,一旦到了項目時間吃緊,或者程序員工作松懈的時候重構就被扔到一邊了。(這個本人可是親身經歷過)直接后果就是程序質量越來越差,你越來越不想繼續(xù)它的開發(fā)。

             現(xiàn)在你可能會問“既然測試都通過了,還有什么可重構的呢?” 對啊? 我們重構什么呢?Bad Smell!《重構》那本書你看過了嗎?它寫的是什么?那本書的價值何在?介紹重構這門技術?告訴你為什么重構?錯!那本書的價值就在于它把應該引起重構的Bad Smell一一列了出來,并給出了該如何重構解決這些Bad Smell的意見,不然那本書看一遍就可以扔了!重構的思想理解起來非常容易,運用好它就要靠經驗了。Martin Fowler就把那些經驗給了我們。ok,你覺得那個列表太長了?我給你一個Bad Smell---重復。什么時候你的代碼中沒有重復了,基本上你可以不要重構了。如果你的代碼具有良好的可讀性就更好了。
                                            
                     
      Tip       最重要的也最常見的Bad Smell --- 重復


             重構不是一個可有可無的東西,一個好的程序員應該時刻把重構的想法放在腦中,只有通過不斷的重構你才能開發(fā)出一個合格的程序。當然如果你把一個在某些時候,某些人手上能夠工作的程序叫做合格的話,你可以關掉你的IE,別聽我在這廢話了。一個接口的產生,一個模式應用都可能來源于你的重構,什么叫模式在心中?通過重構在你的代碼中浮現(xiàn)出來的模式就是最好的體現(xiàn)。

             重構不是小修改。重構過程中每小步都僅僅是一次小的修改,而當你完成一次重構,你會發(fā)現(xiàn)你的代碼除了功能上還和以前一樣,結構完全變了,原來的類沒有了,新的接口出來了,多了很多新的類,原來的方法移到了新的類中,好似做了一次整容。不破不立!如果你的每次重構都是小的修修補補,要么就是你的預判能力太強,要么就是不會重構。呵呵,不要笑!笑的人多半是后者。兼容性? 老兄,你的系統(tǒng)還沒開發(fā)完呢?你跟我談兼容性? 

                  
      Tip            不要怕你的重構把你代碼變的面目全非,要單元測試干嗎的?


            你聽說過測試驅動開發(fā)(TDD)嗎?你知道什么是TDD嗎? TDD中最重要的是什么? 測試?錯!TDD最重要的就是重構。TDD的本質就是不斷的重構。測試是用來保證重構的安全性的,是為重構服務的。
            你知道什么是面向對象嗎?接口! 你知道什么是TDD嗎?重構!
          
             
      覺得太理論了?下面是一些我的親身體會:
      1. 重構已經成為我開發(fā)中不可缺少的部分。
      2. 在前段時間的一個開發(fā)中,前期由于客戶沒有給太多的時間壓力,我重構的頻率很高,設計也越來越讓我滿意。而到了項目后期,每天都規(guī)定了必須完成多少多少功能,使得我的重構大打折扣,而且由于長時間的投入于一個項目,也使得我對重構有了厭倦。因為項目做的好壞對我沒有非常直接的利益。如果沒有太多的壓力,并且對我的“完美”表現(xiàn)有更多的鼓勵和支持我會做的更好。
      3. 由于項目涉及UI(幾乎沒有哪個項目不涉及UI), 使得我在重構的過程中一點安全感都沒有,這也是嚴重制約重構的一大因素。 如果有更好的測試小組或者更好的UI自動化測試框架也會讓我能更加大膽的重構。


      相關文章:

      一個畫圖程序的演變
      測試驅動開發(fā) --- Rss Reader Item Marker

      一點廢話:
      說到Refactory .呵呵,最近還冒出來一個Prefactoring,不過這個書名估計是為了迎合市場,沒什么新意。不過書寫的還不錯,想體驗一下怎么從頭開發(fā)一個程序的建議看看。不過我估計它獲不了Jolt. Jolt提名里的那本有關SOA的書倒是不錯,想了解SOA強烈推薦。

      主站蜘蛛池模板: 免费观看欧美猛交视频黑人| 日韩精品无码不卡无码| 激情综合一区二区三区| 在线一区二区中文字幕| аⅴ天堂中文在线网| 亚洲岛国av一区二区| 久久美女夜夜骚骚免费视频| 日韩国产精品中文字幕| 四虎成人精品无码| 99噜噜噜在线播放| 内射囯产旡码丰满少妇| 久久99精品国产麻豆婷婷| 亚洲中文字幕久久精品码| 亚洲综合中文字幕首页| 久久综合激情网| 性XXXX视频播放免费直播| julia无码中文字幕一区| 国产亚洲一在无在线观看| 日本中文字幕不卡在线一区二区 | 东乡族自治县| 国产日韩av一区二区在线| 国产午夜福利视频一区二区 | 国产96在线 | 亚洲| 欧美国产成人久久精品| 天堂在线精品亚洲综合网| 韩国无码AV片午夜福利| 亚洲日本欧美日韩中文字幕| 亚洲综合色网一区二区三区| 99久久久国产精品免费无卡顿| 国产亚洲精品在av| 两个人日本www免费版| 久久av无码精品人妻出轨| 国产又爽又黄的精品视频| 国产99在线 | 亚洲| 黔江区| 亚洲少妇一区二区三区老| 日本高清中文字幕免费一区二区| 大新县| 久久综合开心激情五月天| 久久天天躁狠狠躁夜夜av| 色综合网天天综合色中文|