當物件技術成為老生常談之後—尤其在Java編程語言之中,新的問題也在軟體開發社群中浮現了出來。缺乏經驗的開發人員完成了大量粗劣設計,獲得的程式不但缺乏效率,也難以維護和擴展。漸漸地,軟體系統專家發現,與這些沿襲下來的、品質不佳的程式共處,是多麼艱難。物件專家運用許多(而且日漸更多)技術來改善既有程式的結構完善性與性能,已有數年之久。但是這些被稱為「重構」(refactoring)的實踐技術,一直(只)流傳在專家領域內,因為沒有人願意將全部這些知識錄寫為所有開發人員可讀的形式。這種情況如今終於結束。在《Refactoring:ImprovingtheDesignofExistingCode》書中,知名的物件技術者MartinFowler闖入新的領域,褪去那些名家實踐手法的神秘面紗,並展示軟體從業人員領悟這種新過程的重大意義。只要受過適度訓練,一位技巧嫻熟的系統程式員可以在拿到一個糟糕的設計之後,把它翻新為設計良好、穩健強固的程式碼。本書之中,MartinFowler告訴你重構機會通常可以在哪裡找到,以及如何將一個糟糕的設計重新修訂為一個良好的設計。每個重構步驟都十分簡—簡單到了似乎不值得去做的程度。重構涉及將欄位(field)從一個class搬移到另一個class,或將某些程式碼拉出來獨立為另一個函式(method),或甚至將某些程式碼上下移動於繼承體系(hierarchy)之中。這些個別步驟雖然可能十分基本,積累下來的影響卻能夠徹底改善設計。重構已經被證明可以阻止軟體的腐朽與衰敗。除了討論各式各樣的重構技術,作者還提供了一份詳細名錄(catalog),其中有超過70個已被證明效果的重構手法,以饒富幫助的重點,教導你實施的時機,實施時的逐步指令。並各自攜帶一個例子,顯示重構的運轉。這些富有良好解說價值的實例都以Java寫就,其中的觀念適用於任何物件導向編程語言。MartinFowler是一位獨立諮詢顧問,他運用物件技術解決企業問題已經超過10年。他的顧問領域包括健康管理、金融貿易,以及法人財務。他的客戶包括Chrysler,Citibank,UKNationalHealthService,AndersenConsulting,NetscapeCommunications。此外Fowler也是objects、UML、patterns技術的一位合格講師。他是《AnalysisPatterns》和《UMLDistilled》的作者。KentBeck是一位知名的程式員、測試員、重構員、作家、五弦琴專家。JohnBrant和DonRoberts是《RefactoringBrowserforSmalltalk》的作者,此書可從http://st-www.cs.uiuc.edu/~brant/RefactoringBrowser獲得。他們兩人也是諮詢顧問,研究重構的實踐與理論有六年之久。WilliamOpdyke在伊利諾大學所做的object-orientedframeworks(物件導向框架)博士研究,導出了重構領域的第一份重要出版品。他目前是LucentTechnologies/BellLaboratories的一名卓越技術人員。譯者侯捷,致力計算機技術教育超過10年—以著作、翻譯、評論、專欄、授課等多重形式。對於各種層級、各種定位、各種技術領域之FrameworkLibraries有濃烈興趣和鑽研。譯者熊節,普通程式員,喜編程,樂此而不疲。酷愛讀書,好求新知。記性好忘性大,故凡有所得必記諸文字,有小得,無大成。胸有點墨,心無大志,惟願寧靜淡泊而已。夜闌人靜,一杯清水,幾本閑書,神交於各方名士,獻曝於天下同好,吾願足矣。中文版(本書)支援網站:http://www.jjhou.com(繁體)http://jjhou.csdn.net(簡體)
購物須知
退換貨說明:
會員均享有10天的商品猶豫期(含例假日)。若您欲辦理退換貨,請於取得該商品10日內寄回。
辦理退換貨時,請保持商品全新狀態與完整包裝(商品本身、贈品、贈票、附件、內外包裝、保證書、隨貨文件等)一併寄回。若退回商品無法回復原狀者,可能影響退換貨權利之行使或須負擔部分費用。
訂購本商品前請務必詳閱退換貨原則。