關于代碼之美這本書的評價,有人說它不是一本教科書(Text Book),或者說,拿這個來當教科書會是很失敗的選擇,因為一般人,一般的programmer,基本是“術業(yè)有專攻”,而這本書講的內容涉及面廣而且深;有人說這本書不錯,但——要正確看待,說它是散文集,是用來陶冶情操的。不是任何技術的指導手冊。本節(jié)內容小編為大家整理帶來的這份代碼之美電子書為epub格式免費完整版,歡迎有需要的朋友前來下載查閱!
代碼之美(中文版)簡介
該書介紹了人類在一個奮斗領域中的創(chuàng)造性和靈活性:計算機系統(tǒng)的開發(fā)領域。在每章中的漂亮代碼都是來自獨特解決方案的發(fā)現(xiàn),而這種發(fā)現(xiàn)是來源于作者超越既定邊界的遠見卓識,并且識別出被多數(shù)人忽視的需求以及找出令人嘆為觀止的問題解決方案。
書籍共有33章,有38位作者,每位作者貢獻一章。每位作者都將自己心目中對于“美麗的代碼”的認識濃縮在一章當中,張力十足。38位大牛,每個人對代碼之美都有自己獨特的認識,現(xiàn)在一覽無余的放在一起,對于熱愛程序的每個人都不啻一場盛宴。雖然本書的涉獵范圍很廣,但也只能代表一小部分在這個軟件開發(fā)這個最令人興奮領域所發(fā)生的事情。
代碼之美(中文版)目錄
序
前言
第1章 正則表達式匹配器
編程實踐
實現(xiàn)
討論
其他的方法
構建
小結
第2章 Subversion中的增量編輯器:
靈活的接口
版本控制與目錄樹的轉換
表達目錄樹的差異
增量編輯器接口
但這是藝術嗎
像體育比賽一樣抽象
結論
第3章 我編寫過的最漂亮的代碼
我編寫過的最漂亮代碼
事倍功半
觀點
本章的中心思想是什么?
結論
致謝
第4章 查找
耗時
問題:數(shù)據
問題:時間,人物,以及對象
大規(guī)模尺度的搜索
結論
第5章 正確、優(yōu)美、迅速(按重要性排序):
從設計XML驗證器中學到的經驗
XML驗證器的作用
問題所在
版本1:簡單的實現(xiàn)
版本2:模擬BNF語法 —— 復雜度O(N)
版本3:第一個復雜度O(log N)的優(yōu)化
版本4:第二次優(yōu)化:避免重復驗證
版本5:第三次優(yōu)化:復雜度 O(1)
版本 6:第四次優(yōu)化:緩存
從故事中學到的
第6章 集成測試框架:脆弱之美
三個類搞定一個驗收測試框架
框架設計的挑戰(zhàn)
開放式框架
一個HTML解析器可以簡單到什么程度?
結論
第7章 漂亮的測試
討厭的二分查找
JUnit簡介
將二分查找進行到底
結論
第8章 圖像處理中的即時代碼生成
第9章 自頂向下的運算符優(yōu)先級
JavaScript
符號表
語素
優(yōu)先級
表達式
中置運算符
前置運作符
賦值運算符
常數(shù)
Scope
語句
函數(shù)
數(shù)組和對象字面量
要做和要思考的事
第10章 尋求快速的種群計數(shù)
基本方法
分治法
其他方法
兩個字種群計數(shù)的和與差
兩個字的種群計數(shù)比較
數(shù)組中的1位種群計數(shù)
應用
第11章 安全通信:自由的技術
項目啟動之前
剖析安全通信的復雜性
可用性是關鍵要素
基礎
測試集
功能原型
清理,插入,繼續(xù)……
在喜馬拉雅山的開發(fā)工作
看不到的改動
速度確實重要
人權中的通信隱私
程序員與文明
第12章 在BioPerl里培育漂亮代碼
BioPerl和Bio::Graphics模塊
Bio::Graphics的設計流程
擴展Bio::Graphics
結束語和教訓
第13章 基因排序器的設計
基因排序器的用戶界面
通過Web跟用戶保持對話
多態(tài)的威力
濾除無關的基因
大規(guī)模美麗代碼理論
結論
第14章 優(yōu)雅代碼隨硬件發(fā)展的演化
計算機體系結構對矩陣算法的影響
一種基于分解的方法
一個簡單版本
LINPACK庫中的DGEFA子程序
LAPACK DGETRF
遞歸LU
ScaLAPACK PDGETRF
針對多核系統(tǒng)的多線程設計
誤差分析與操作計數(shù)淺析
未來的研究方向
進一步閱讀
第15章 漂亮的設計會給你帶來長遠的益處
對于漂亮代碼的個人看法
對于CERN庫的介紹
外在美(Outer Beauty)
內在美(Inner Beauty)
結論
第16章 Linux內核驅動模型:協(xié)作的好處
簡單的開始
進一步簡化
擴展到上千臺設備
小對象的松散結合
第17章 額外的間接層
從直接代碼操作到通過函數(shù)指針操作
從函數(shù)參數(shù)到參數(shù)指針
從文件系統(tǒng)到文件系統(tǒng)層
從代碼到DSL(Domain-Specific Language)
復用與分離
分層是永恒之道嗎
第18章 Python的字典類:如何打造全能戰(zhàn)士
字典類的內部實現(xiàn)
特殊調校
沖突處理
調整大小
迭代和動態(tài)變化
結論
致謝
第19章 NumPy中的多維迭代器
N維數(shù)組操作中的關鍵挑戰(zhàn)
N維數(shù)組的內存模型
NumPy迭代器的起源
迭代器的設計
迭代器的接口
迭代器的使用
結束語
第20章 NASA火星漫步者任務中的高可靠企業(yè)系統(tǒng)
任務與CIP
任務需求
系統(tǒng)架構
案例分析:流服務
可靠性
穩(wěn)定性
結束語
第21章 ERP5:最大可適性的設計
ERP的總體目標
ERP5
Zope基礎平臺
ERP5 Project中的概念
編碼實現(xiàn)ERP5 Project
結束語
第22章 一匙污水
第23章 MapReduce分布式編程
激動人心的示例
MapReduce編程模型
其他MapReduce示例
分布式MapReduce的一種實現(xiàn)
模型擴展
結論
進階閱讀
致謝
附錄:單詞計數(shù)解決方案
第24章 美麗的并發(fā)
一個簡單的例子:銀行賬戶
軟件事務內存
圣誕老人問題
對Haskell的一些思考
結論
致謝
第25章 句法抽象:syntax-case 展開器
Syntax-case簡介
展開算法
結論
第26章 節(jié)省勞動的架構:一個面向對象的
網絡化軟件框架
示例程序:日志服務
日志服務器框架的面向對象設計
實現(xiàn)串行化日志服務器
實現(xiàn)并行日志服務器
結論
第27章 以REST方式集成業(yè)務伙伴
項目背景
把服務開放給外部客戶
使用工廠模式轉發(fā)服務
用電子商務協(xié)議來交換數(shù)據
結束語
第28章 漂亮的調試
對調試器進行調試
系統(tǒng)化的過程
關于查找的問題
自動找出故障起因
增量調試
最小化輸入
查找缺陷
原型問題
結束語
致謝
進一步閱讀
第29章 代碼如散文
第30章 當你與世界的聯(lián)系只有一個按鈕時
基本的設計模型
輸入界面
用戶界面的效率
下載
未來的發(fā)展方向
第31章 Emacspeak:全功能音頻桌面
產生語音輸出
對于在線信息的簡單訪問
小結
結束語
致謝
第32章 變動的代碼
像書本一樣
功能相似的代碼在外觀上也保持相似
縮進帶來的危險
瀏覽代碼
我們使用的工具
DiffMerge的曲折歷史
結束語
致謝
進一步閱讀
第33章 為《The Book》編寫程序
沒有捷徑
給Lisp初學者的提示
三點共線
不可靠的斜率
三角不等性
河道彎曲模型
“Duh!”——我的意思是“Aha!”
結束語
進一步閱讀
后記
代碼之美(中文版)內容截圖
- PC官方版
- 安卓官方手機版
- IOS官方手機版