重構(gòu)與模式

出版時(shí)間:2006年10月  出版社:人民郵電出版社  作者:[美]Joshua Kerievsky  譯者:楊光,劉基誠(chéng)  
Tag標(biāo)簽:無  

內(nèi)容概要

本書開創(chuàng)性地深入揭示了重構(gòu)與模式這兩種軟件開發(fā)關(guān)鍵技術(shù)之間的聯(lián)系,說明了通過重構(gòu)實(shí)現(xiàn)模式改善既有的設(shè)計(jì),往往優(yōu)于在新的設(shè)計(jì)早期使用模式。本書不僅展示了一種應(yīng)用模式和重構(gòu)的創(chuàng)新方法,而且有助于讀者結(jié)合實(shí)戰(zhàn)深入理解重構(gòu)和模式。書中講述了27種重構(gòu)方式。
本書適于面向?qū)ο筌浖_發(fā)人員閱讀,也可作為高校計(jì)算機(jī)專業(yè)、軟件工程專業(yè)師生的參考讀物。

圖書封面

圖書標(biāo)簽Tags

評(píng)論、評(píng)分、閱讀與下載


    重構(gòu)與模式 PDF格式下載


用戶評(píng)論 (總計(jì)24條)

 
 

  •      這本書中的內(nèi)容不太好懂,即使你看了Martin的《重構(gòu)》和四人幫的《設(shè)計(jì)模式》,最好還是把里面的代碼敲一遍,并仔細(xì)的重構(gòu),體會(huì)整個(gè)過程。在重構(gòu)的過程,會(huì)發(fā)現(xiàn)一些新的體會(huì)。
      
      
       關(guān)于設(shè)計(jì)模式,我推薦《設(shè)計(jì)模式之禪》和 Head First 的那本設(shè)計(jì)模式。。1995年,四人幫的設(shè)計(jì)模式,有些舊,也比較難懂。
  •     之前還沒看過模式那本書,所以不知道那些模式。
      現(xiàn)在看完只是對(duì)重構(gòu)有一部分的了解,因?yàn)槔锩娴拇a為Java,而我是用objective-c的,但代碼都是通用的。只能在之后看完了重構(gòu)和模式兩本書以后再回頭看,應(yīng)該會(huì)有更深刻的了解。
      現(xiàn)在對(duì)項(xiàng)目的重構(gòu)有了一點(diǎn)的幫助,很好。
  •     又一經(jīng)典被蛋疼的翻譯給毀了,我越看越不淡定,實(shí)在忍不住在書上畫滿刪除線,大爆shit,第六章開始講正題就充斥大量沒標(biāo)點(diǎn)的長(zhǎng)句,帶語病,好不容易加個(gè)標(biāo)點(diǎn),還能標(biāo)錯(cuò)??吹阶g者序里寫:"在準(zhǔn)備寫這篇譯者序的時(shí)候,我終覺得很難,因?yàn)樽g者序類似讀后感,是要到出翻譯時(shí)的特別感受,而我在翻譯的時(shí)候沒什么特別的觸動(dòng)..."還以為您似張無忌學(xué)太極,無招勝有招了,原來敢情您是真沒感受,機(jī)器翻譯都比這。。。哎,出版商無德啊,找來的譯者水平真是...這種書就得找社區(qū)里的狠角來翻譯唉
  •     總的來說,這是一本好書。
      “重構(gòu)的目的是設(shè)計(jì)模式”作為全書的核心,簡(jiǎn)直是一語中的。
      設(shè)計(jì)模式應(yīng)該是一門深入面向?qū)ο笏枷牍撬璧膬?nèi)功,而不是表露其外的外功。為設(shè)計(jì)而設(shè)計(jì)的思路并不適合大項(xiàng)目。逐漸重構(gòu)到設(shè)計(jì)模式才是設(shè)計(jì)模式的王道。
      讀此書應(yīng)該有面向?qū)ο笳Z言的扎實(shí)功底,并應(yīng)有設(shè)計(jì)模式的基本概念。
      此外本書里面不少說明有些依賴Java。有些概念的描述過于書面、晦澀和啰嗦。
      另:第100頁有筆誤。數(shù)組擴(kuò)容應(yīng)該是增加10,而不是增加10倍。
  •     只是看了一半,因?yàn)槠渲忻總€(gè)例子都含有作者實(shí)踐過的真實(shí)代碼,非常適合我們跟著作者的思路去思考,運(yùn)用設(shè)計(jì)模式進(jìn)行重構(gòu),解決眼前存在的難題!
  •     不要在設(shè)計(jì)之初就采用復(fù)雜的設(shè)計(jì)模式,這一點(diǎn)我非常認(rèn)同作者。使用設(shè)計(jì)模式是為了應(yīng)對(duì)變化。在設(shè)計(jì)階段難以預(yù)見系統(tǒng)變化。推薦采用簡(jiǎn)單的設(shè)計(jì)模式,例如工廠方法和組合方法。
      這本書告知讀者,復(fù)雜的設(shè)計(jì)模式(例如訪問者)產(chǎn)生于不斷重構(gòu)。在重構(gòu)過程中完善系統(tǒng)設(shè)計(jì),應(yīng)對(duì)未來變化,才是真正的可行之道。
      目前市場(chǎng)上的設(shè)計(jì)模式類書籍,都注重描繪設(shè)計(jì)模式的應(yīng)用場(chǎng)景——例如GoF的經(jīng)典著作。在現(xiàn)實(shí)項(xiàng)目中少有書中所講的典型應(yīng)用場(chǎng)景。因此,當(dāng)讀者面對(duì)實(shí)際問題時(shí),仍會(huì)無所適從。
      當(dāng)然只有通過閱讀精良的代碼,了解其演化過程,并自己動(dòng)手編寫大量程序,才能夠?qū)⒃O(shè)計(jì)模式融會(huì)貫通。
  •     之前看過不少有關(guān)設(shè)計(jì)模式的書,《java與模式》,《Head First Design Patterns》,《重構(gòu):改善既有代碼的設(shè)計(jì)》。
      但是這本《重構(gòu)與模式》,確實(shí)最實(shí)在的一本?!吨貥?gòu)》從最基本的最常用最簡(jiǎn)單的重構(gòu)方法開始介紹,實(shí)在是受益良多,對(duì)以前對(duì)設(shè)計(jì)模式的理解加深了很多,終于達(dá)到真正實(shí)踐的程度。而《重構(gòu)與模式》無疑對(duì)模式的實(shí)踐和在實(shí)際中的應(yīng)用,起到了非常好示例作用。GOF的《設(shè)計(jì)模式》無疑是非常最經(jīng)典,但是教科書式的風(fēng)格,總覺得非?;逎?,看完之后也是一知半解,離實(shí)踐的的地步,實(shí)在有點(diǎn)距離。
      《Head First Design Patterns》用非常生動(dòng)的圖片和對(duì)話形式,來詮釋設(shè)計(jì)模式,非常生動(dòng),看起來也津津有味。但是《重構(gòu)》,確致力于消除代碼中壞味道,甚至最細(xì)小的改進(jìn) -- 改名。
      而《重構(gòu)與模式》無疑是《重構(gòu)》的有益補(bǔ)充,并且結(jié)合大量實(shí)際代碼,在既有代碼的基礎(chǔ)上重構(gòu)到設(shè)計(jì)模式,而大部分有關(guān)設(shè)計(jì)模式的書都是從設(shè)計(jì)的角度上去考慮應(yīng)用設(shè)計(jì)模式,貌似水平還達(dá)不到那種程度,在編碼開始之前,已經(jīng)想好用什么什么模式,還真的很難。都是代碼到了一定規(guī)模,發(fā)現(xiàn)種種壞味道的時(shí)候,來結(jié)合《重構(gòu)》和《重構(gòu)與模式》中的方法,一點(diǎn)點(diǎn)的開始重構(gòu),覺得最實(shí)在。。
  •     最近剛看完<重構(gòu)與模式>這本書, 這本書很適合我的一直以來的觀點(diǎn), 大多數(shù)情況下, 模式的應(yīng)用是一個(gè)漸進(jìn)演變的過程, 壞味道也不是一開始就出現(xiàn)的, 而在一開始就想到用這個(gè)模式, 那個(gè)模式的, 很可能導(dǎo)致設(shè)計(jì)過度. 貌似重構(gòu)與模式有一種天然的關(guān)系. 重構(gòu)是手段, 模式是目的, 同時(shí)模式也為重構(gòu)指明了方向和原則.書的原名<refactoring to parttens>很好的揭示了這本書的內(nèi)容, 反而是中文名.....
      <重構(gòu)>林林總總的列出了我們會(huì)用到的各種重構(gòu)手法, <設(shè)計(jì)模式>向我們描述了23種模式是個(gè)什么樣子, 何種情況適用. 而這本書很好的將二者聯(lián)系起來.
      重構(gòu)方法有很多, <重構(gòu)與模式>中重點(diǎn)關(guān)注了幾個(gè)重構(gòu)手法和模式的關(guān)系, 而這幾個(gè)重構(gòu)手法相對(duì)來說不怎么好用, 或者很少人能用到, 可以歸類為重構(gòu)的高級(jí)用法. 我就是這樣^_^, 大部分情況下重構(gòu)的手法可能就是重命名, 抽取方法, 抽取類等等.
      本書從創(chuàng)建, 簡(jiǎn)化, 泛化, 保護(hù), 聚集操作幾個(gè)方面來講重構(gòu)到模式, 對(duì)我個(gè)人而言, 簡(jiǎn)化和泛化應(yīng)該是本書的精華所在. 每一個(gè)重構(gòu)到模式的講解按照<設(shè)計(jì)模式>的風(fēng)格來安排(動(dòng)機(jī), 優(yōu)缺點(diǎn), 做法, 示例), 不過我覺得UML類圖一目了然, 真正的是達(dá)到了一圖勝千言的效果.
      
  •     這本書斷斷續(xù)續(xù)看過幾次,感覺距離head first 那本有一定的距離,無法讓我很投入,或者看后有所思考,可能是我經(jīng)驗(yàn)不足。
  •     這本書更多介紹了復(fù)合重構(gòu)和測(cè)試驅(qū)動(dòng)重構(gòu),如果對(duì)一般的重構(gòu)手法和設(shè)計(jì)模式都不了解,讀這本書會(huì)比較吃力。如果有過不少的項(xiàng)目經(jīng)驗(yàn),讀這本書更合適。
  •      重構(gòu)與模式還有極限編程,我根本不會(huì)指望從書本中入門。
       一個(gè)項(xiàng)目,幾個(gè)項(xiàng)目之間總結(jié)出的經(jīng)驗(yàn),然后回過頭來看看這些書,也許會(huì)有些共鳴,或者修補(bǔ)一些經(jīng)驗(yàn)的遺漏,至于入門,領(lǐng)會(huì)了皮毛只會(huì)造成濫用,最近在看ajax設(shè)計(jì)模式,尤其有這種感覺,一種理論,從形成到濫用的過程比從從萌芽到形成的過程要快的多。形成文字的東西,可以有入門的部分,但是通篇入門,讀者還需謹(jǐn)慎入手。
  •   同意,翻譯比較生澀。影響閱讀。
  •   同意。翻譯的太有的問題了。
  •   請(qǐng)問有其他類似的書推薦下么
  •   "在準(zhǔn)備寫這篇譯者序的時(shí)候,我終覺得很難,因?yàn)樽g者序類似讀后感,是要到出翻譯時(shí)的特別感受,而我在翻譯的時(shí)候沒什么特別的觸動(dòng)。從本書的第一個(gè)重構(gòu)直到最后一個(gè),一切都顯得那么自然;作者給出的每一個(gè)建議,每一個(gè)告誡,每一次小小的改動(dòng),給我的感覺都是水到渠成的。現(xiàn)在想想,其實(shí)重構(gòu)的魅力就在于此,它就是每個(gè)軟件開發(fā)人員自然而然應(yīng)該做的事情。有句話叫‘絢爛之極歸于平淡’,用來形容重構(gòu),真是再合適不過了。"
    ——自己不說人話,能把別人的話說完么?即便是吐槽,也不必“授之予柄”吧?
  •   我本來還以為是我的理解能力有問題呢。。原來大家也都是同一個(gè)意見:翻譯的實(shí)在是太爛了。。。
    好多句子非常的難懂,如果工作經(jīng)驗(yàn)不足,就更加看不懂了。。。哎。??拥?/li>
  •   “如果進(jìn)一步采取措施更好的話,做法建議使用以委托取代繼承重構(gòu)?!?br /> 我覺得翻譯主要還是得靠語文水平而不是英文水平。
  •   不知道13年出的修訂版的翻譯怎么樣了
  •   13 年的版本我買了,其實(shí)后來的重印就是把原來的拿來換個(gè)封面,加 10 幾塊錢就拿來賣了。
  •   有參照,有比較??赐昴愕脑u(píng)論我知道選那本書了,謝謝!
  •   項(xiàng)目實(shí)施本就應(yīng)該先實(shí)施,再重構(gòu),這重構(gòu)過程中為了消除壞味道自然就會(huì)考慮應(yīng)用Patterns。這樣的Patterns應(yīng)用才是從實(shí)際出發(fā),靈活運(yùn)用,而不是套用。
  •   看了2/3了,總體來講翻譯的不錯(cuò)。內(nèi)容上并沒有宣傳上的那樣經(jīng)典,甚至談不上經(jīng)典,不過作者對(duì)測(cè)試驅(qū)動(dòng)重構(gòu)的提法也算有新意,對(duì)如何通過重構(gòu)實(shí)現(xiàn)、取向和去除設(shè)計(jì)模式也總結(jié)的很好,其實(shí)我們平時(shí)的工作都下意識(shí)地這樣去做,但是作者清晰的講解和概括是非常有價(jià)值的。
  •   沒有人指望能從書本中入門,沒有比較多的項(xiàng)目經(jīng)驗(yàn),對(duì)書中所述不能產(chǎn)生共鳴,這樣的書應(yīng)該先放下,過段時(shí)間再拿起來。
  •   贊同,先做項(xiàng)目據(jù)再看書。
 

250萬本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7