代碼閱讀方法與實(shí)踐

出版時(shí)間:2004-3  出版社:清華大學(xué)出版社  作者:斯平內(nèi)利斯  頁數(shù):326  譯者:趙學(xué)良  
Tag標(biāo)簽:無  

內(nèi)容概要

代碼閱讀有自身的一套技能,重要的是能夠確定什么時(shí)候使用哪項(xiàng)技術(shù)。本書中,作者使用600多個(gè)現(xiàn)實(shí)的例子,向讀者展示如何區(qū)分好的(和壞的)代碼,如何閱讀,應(yīng)該注意什么,以及如何使用這些知識(shí)改進(jìn)自己的代碼。養(yǎng)成閱讀高品質(zhì)代碼的習(xí)慣,可以提高編寫代碼的能力。 
閱讀代碼是程序員的基本技能,同時(shí)也是軟件開發(fā)、維護(hù)、演進(jìn)、審查和重用過程中不可或缺的組成部分。本書首次將閱讀代碼作為一項(xiàng)獨(dú)立課題,系統(tǒng)性地加以論述。本書引用的代碼均取材于開放源碼項(xiàng)目——所有程序員都應(yīng)該珍視的寶庫。本書圍繞代碼閱讀,詳細(xì)論述了相關(guān)的知識(shí)與技能?!八街⒖梢怨ビ瘛?,通過仔細(xì)閱讀并學(xué)習(xí)本書,可以快速地提高讀者代碼閱讀的技能與技巧,進(jìn)而從現(xiàn)有的優(yōu)秀代碼、算法、構(gòu)架、設(shè)計(jì)中汲取營養(yǎng),提高自身的開發(fā)與設(shè)計(jì)能力。
本書適用于對(duì)程序設(shè)計(jì)的基本知識(shí)有一定了解,并想進(jìn)一步提高自身開發(fā)能力的讀者。

作者簡介

作者:(希臘)斯平內(nèi)利斯 譯者:趙學(xué)良

書籍目錄

第1章 導(dǎo)論 1.1 為什么以及如何閱讀代碼 1.2 如何閱讀本書 進(jìn)階讀物第2章 基本編程元素 2.1 一個(gè)完整的程序 2.2 函數(shù)和全局變量 2.3 while循環(huán)、條件和塊 2.4 switch語句 2.5 for循環(huán) 2.6 break和continue語句 2.7 字符和布爾型表達(dá)式 2.8 goto語句 2.9 小范圍重構(gòu) 2.10 do循環(huán)和整型表達(dá)式 2.11 再論控制結(jié)構(gòu) 進(jìn)階讀物第3章 高級(jí)C數(shù)據(jù)類型 3.1 指針 3.2 結(jié)構(gòu) 3.3 共用體 3.4 動(dòng)態(tài)內(nèi)存分配 3.5 typedef聲明 進(jìn)階讀物第4章 C數(shù)據(jù)結(jié)構(gòu) 4.1 向量 4.2 矩陣和表 4.3 棧 4.4 隊(duì)列 4.5 映射 4.6 集合 4.7 鏈表 4.8 樹 4.9 圖 進(jìn)階讀物 第5章 高級(jí)控制流程 5.1 遞歸 5.2 異常 5.3 并行處理 5.4 信號(hào) 5.5 非局部跳轉(zhuǎn) 5.6 宏替換 進(jìn)階讀物第6章 應(yīng)對(duì)大型項(xiàng)目 6.1 設(shè)計(jì)與實(shí)現(xiàn)技術(shù) 6.2 項(xiàng)目的組織 6.3 編譯過程和制作文件 6.4 配置 6.5 修訂控制 6.6 項(xiàng)目的專有工具 6.7 測試 進(jìn)階讀物第7章 編碼規(guī)范和約定 7.1 文件的命名及組織 7.2 縮進(jìn) 7.3 編排 7.4 命名約定 7.5 編程實(shí)踐 7.6 過程規(guī)范 進(jìn)階讀物 第8章 文檔 8.1 文檔的類型 8.2 閱讀文檔 8.3 文檔存在的問題 8.4 其他文檔來源 8.5 常見的開放源碼文檔格式 進(jìn)階讀物第9章 系統(tǒng)構(gòu)架 9.1 系統(tǒng)的結(jié)構(gòu) 9.2 控制模型 9.3 元素封裝 9.4 構(gòu)架重用 進(jìn)階讀物 第10章 代碼閱讀工具 10.1 正規(guī)表達(dá)式 10.2 用編輯器瀏覽代碼 10.3 用grep搜索代碼 10.4 找出文件的差異 10.5 開發(fā)自己的工具 10.6 用編譯器來協(xié)助代碼閱讀 10.7 代碼瀏覽器和美化器 10.8 運(yùn)行期間的工具 10.9 非軟件工具 可用工具和進(jìn)階讀物第11章 一個(gè)完整的例子 11.1 概況 11.2 攻堅(jiān)計(jì)劃 11.3 代碼重用 11.4 測試與調(diào)試 11.5 文檔 11.6 觀察報(bào)告附錄A 代碼概況附錄B 閱讀代碼的格言

媒體關(guān)注與評(píng)論

書評(píng)無論從哪方面講,代碼閱讀都不是一個(gè)容易的課題。在此之前,我不知道是否其他書籍曾嘗試過闡述這一主題。因此,當(dāng)我看到這本書時(shí),我毫不猶豫地選擇了它。閱讀這本書時(shí),我的第一反應(yīng)是“這本書在介紹什么呢?”。我在閱讀和理解他人的代碼時(shí),曾有過無數(shù)次這種感覺。就如同,當(dāng)您遇到一段新代碼時(shí),需要花一段時(shí)間來理解與消化一樣,理解與消化這本書背后的思想也要花費(fèi)一些時(shí)間。實(shí)際上,我多次打開這本書,重新閱讀部分內(nèi)容,并將它應(yīng)用到實(shí)際的環(huán)境中,從而通過具體的形式不斷加深對(duì)這個(gè)課題相關(guān)理論的理解。如果您的情況和我類似,那么這本書可能很適合您。

編輯推薦

  無論從哪方面講,代碼閱讀都不是一個(gè)容易的課題。在此之前,我不知道是否其他書籍曾嘗試過闡述這一主題。因此,當(dāng)我看到這本書時(shí),我毫不猶豫地選擇了它。閱讀這本書時(shí),我的第一反應(yīng)是“這本書在介紹什么呢?”。我在閱讀和理解他人的代碼時(shí),曾有過無數(shù)次這種感覺。就如同,當(dāng)您遇到一段新代碼時(shí),需要花一段時(shí)間來理解與消化一樣,理解與消化這本書背后的思想也要花費(fèi)一些時(shí)間。實(shí)際上,我多次打開這本書,重新閱讀部分內(nèi)容,并將它應(yīng)用到實(shí)際的環(huán)境中,從而通過具體的形式不斷加深對(duì)這個(gè)課題相關(guān)理論的理解。如果您的情況和我類似,那么這本書可能很適合您。

圖書封面

圖書標(biāo)簽Tags

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


    代碼閱讀方法與實(shí)踐 PDF格式下載


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

 
 

  •   先說些題外話,讀代碼和讀文章的道理是一樣的。初讀商業(yè)代碼,我顯得很不適應(yīng),也深感語言類教材講的東西跟不用不上??墒牵鰝€(gè)類比。我發(fā)現(xiàn)自己閱讀英文文檔還是有一套的,想了想原因,是我在英語上下了大功夫,不是學(xué)語法,而是為了準(zhǔn)備參加XXX出國考試。那里的文章很學(xué)術(shù),也很技術(shù)。我都能搞定,這計(jì)算機(jī)語言比英語可是白癡多了,于是我抄起此書,抱著信則有不信則無的觀點(diǎn)。先充分信任作者,投入去讀,你會(huì)發(fā)現(xiàn)作者寫出了他閱讀代碼時(shí)的思維過程。這是很寶貴的,是任何“深入理解XXX”之類書比不了的。
  •   閱讀遺留代碼,改造遺留系統(tǒng),難度要比新開發(fā)系統(tǒng)要高不少,這本書作為指導(dǎo)書還是很不錯(cuò)的。
  •   很好的一本代碼閱讀的書~~頂!
  •   全部是C和C++的東西,我正在維護(hù)C#的代碼,似乎用不上,好像調(diào)試的書對(duì)我?guī)椭?,也可能是我還沒有讀進(jìn)去。
  •   這本書對(duì)于開源愛好者真是很好的讀物啊,尤其對(duì)于我這樣打算寫一個(gè)開源的小軟的程序員來說,真是一本很對(duì)口的參考書。
  •   看起來不錯(cuò),還沒有閱讀
  •   強(qiáng)烈推薦這本說給所有初級(jí)程序員
  •   在看此書.感覺目前一般.
  •   幫同事買的, 書籍印刷還不錯(cuò)~
  •   打折買的 買回來才知道是很舊的書了 幾年前的書了 所以沒看了
  •   非常適合初學(xué)者,適合入門
  •   不錯(cuò)的書,值得好好學(xué)習(xí)
  •   看名字不錯(cuò)
  •   下單到手,用時(shí)比較長,當(dāng)當(dāng)加油啊
  •   到貨及時(shí),書也不錯(cuò)。
  •   首先,我個(gè)人認(rèn)為,寫程序和寫作文一樣,需要借鑒別人的,看得多了、寫得多了自然質(zhì)量也會(huì)提升。但是閱讀代碼其實(shí)是一種技術(shù)、能力。如果在讀代碼方面沒有技巧,那個(gè)人感覺是費(fèi)時(shí)失事!這本書很有用,而且也說得沒錯(cuò),閱讀代碼是一種技術(shù),需要經(jīng)驗(yàn)的累積,而這本書就主要是講一些作者在閱讀代碼時(shí)的經(jīng)驗(yàn),在看這熟讀這本書后,的確在看代碼時(shí)的某些地方會(huì)形成“條件反射”,因?yàn)橛心承┧惴傆行┑胤接泄潭ǖ哪J?,這樣就不用再去花時(shí)間去思考,直接看就是,能節(jié)省時(shí)間??梢灾v是事半功倍,所以我推薦CODINGFANS們和想精進(jìn)自己寫代碼能力的朋友們讀一讀這本書。
  •   不錯(cuò),代碼的閱讀有時(shí)就像讀一本小說,有的容易讀,有的很難懂;有時(shí)又像玩游戲,掉進(jìn)代碼迷宮里找不到路,本書介紹的一些方法還是不錯(cuò)的,比如“切片”的方法,可以閱讀代碼時(shí)備查用。
  •   沒有很詳細(xì)的代碼分析
  •   C語言的過多了,C++的代碼較少
  •   結(jié)合書上的代碼能學(xué)到東西
  •   發(fā)來時(shí) 盤是斷的
  •   這本書的初衷不錯(cuò)很多解釋也令人耳目一新的感覺算是比較值得一看吧
  •   如題,不過還是要買了書自己看才知道,適合中級(jí)的人看
  •   適合對(duì)開源項(xiàng)目有興趣的人
  •   書已收到,內(nèi)容不錯(cuò),就是紙張?zhí)。∷拓浰坪跻灿悬c(diǎn)慢了,一周才到!
  •   這個(gè)看了大部分,很多還是蠻有用的,推薦
  •   很棒,很暴力的
  •   還好吧,值得一睇啊!!
  •   譯者對(duì)于和程序無關(guān)的部分翻譯得挺好,不過和程序有關(guān)的部分就常常自以為是的亂翻。剛看了第二章開始不到5頁就發(fā)現(xiàn)兩處翻譯失誤,真是懷疑譯者之前編寫過程序沒有?關(guān)鍵地方翻譯成另一種意思,要是初學(xué)者還真是被你誤人子弟了。非得叫人對(duì)著原文看才行,sigh!而且中文版排版也不太好,原版很多和程序放在一起的需要讀者注意的文字都被放到正文里面了,失去了作者的風(fēng)格。并且將原文中的代碼部分變得奇小,拜托,不要這么省紙行不行?價(jià)錢也不見你便宜多少。建議排版多學(xué)學(xué)《代碼大全》,什么叫專業(yè)。
  •   買的時(shí)候很亢奮,看的時(shí)候很累,實(shí)在看不下去了就丟一邊不再看啦。這本書據(jù)說是很吊的啦。這本書據(jù)其書中評(píng)論以及翻譯者自己說起來也是很吊得樣子。不過可惜,也許是我能力未夠吧,或者是耐性太差。我個(gè)人覺得不怎么樣。
  •   書不錯(cuò),不過就是送的時(shí)間長了些
  •   有些知識(shí)點(diǎn)需要更新
  •   有種上當(dāng)?shù)母杏X,看著這本書特沒勁
  •   感覺翻譯一般,書的質(zhì)量不是很好,是我買到質(zhì)量最差的一本
  •   什么叫“UNIX外殼”?
    不懂就別翻譯。
  •   挺不錯(cuò)的一本書,里面的參考代碼都比較有價(jià)值。對(duì)于剛剛接觸開源的入門者來說值得一讀。
  •   看了一半,還沒看完,適合反復(fù)看
  •   為公司買的非常好
  •   買來閑置了
  •   沒看 書的質(zhì)量不太好
  •   書送來都爛了,有壞頁
  •   推薦學(xué)習(xí)開源項(xiàng)目的人看看~
 

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

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