程式設計實踐(英文版)

程式設計實踐(英文版)

《程式設計實踐(英文版)》是2020年3月人民郵電出版社出版的圖書,作者是[美]布萊恩 W·克尼漢(Brian W·Kernighan)、羅勃·派克(Rob Pike)。

基本介紹

  • 中文名:程式設計實踐(英文版)
  • 作者:[美]布萊恩 W·克尼漢(Brian W·Kernighan)、羅勃·派克(Rob Pike)
  • 出版社:人民郵電出版社
  • 出版時間:2020年3月
  • 頁數:251 頁
  • 定價:49 元
  • 開本:16 開
  • 裝幀:平裝
  • ISBN:9787115407863
內容簡介,圖書目錄,

內容簡介

本書是計算機科學方面的經典名著,由計算機界極 具影響力的兩位專家Brian W. Kernighan和Rob Pike合著。書的內容圍繞程式設計實踐中的一系列問題展開,講述對於程式設計師有共性的知識,以幫助各程式設計師寫出更高效的程式。本書從排錯、測試、性能、可移植性、設計、界面、風格和記法等方面,討論了程式設計中既具有實際意義又具有廣泛意義的思想、技術和方法。
本書值得每位夢想並努力成為程式設計師的人參考,值得每位計算機專業的學生和計算機工作者閱讀,也適合作為程式設計高 級課程的教材或參考書。

圖書目錄

Chapter 1: Style / 風格 1
1.1 Names / 名字 3
1.2 Expressions and Statements / 表達式和語句6
1.3 Consistency and Idioms / 一致性和習慣用語10
1.4 Function Macros / 函式宏17
1.5 Magic Numbers / 幻數19
1.6 Comments / 注釋23
1.7 Why Bother / 為何要在風格方面費心 27
Chapter 2: Algorithms and Data Structures / 算法與數據結構29
2.1 Searching / 檢索30
2.2 Sorting / 排序32
2.3 Libraries / 庫34
2.4 A Java Quicksort / 一個Java快速排序實現37
2.5 O-Notation / 大O記法40
2.6 Growing Arrays / 自增長數組41
2.7 Lists / 表44
2.8 Trees / 樹50
2.9 Hash Tables / 散列表55
2.10 Summary / 小結 58
Chapter 3: Design and Implementation / 設計與實現61
3.1 The Markov Chain Algorithm / 馬爾可夫鏈算法62
3.2 Data Structure Alternatives / 在多種數據結構之間選擇64
3.3 Building the Data Structure in C / 使用C語言構建數據結構65
3.4 Generating Output / 生成輸出69
3.5 Java 71
3.6 C++ 76
3.7 Awk and Perl / Awk和Perl 78
3.8 Performance / 性能80
3.9 Lessons / 經驗教訓82
Chapter 4: Interfaces / 接口85
4.1 Comma-Separated Values / 逗號分隔值86
4.2 A Prototype Library / 一個原型庫87
4.3 A Library for Others / 一個給他人用的庫91
4.4 A C++ Implementation / 一個C++實現99
4.5 Interface Principles / 接口原則103
4.6 Resource Management / 資源管理106
4.7 Abort, Retry, Fail 109
4.8 User Interfaces / 用戶界面113
Chapter 5: Debugging / 調試117
5.1 Debuggers / 調試器 118
5.2 Good Clues, Easy Bugs / 線索明顯、易於發現的錯誤119
5.3 No Clues, Hard Bugs / 線索不明、難以發現的錯誤123
5.4 Last Resorts / **後的手段127
5.5 Non-reproducible Bugs / 不可重現的錯誤 130
5.6 Debugging Tools / 調試工具131
5.7 Other People's Bugs / 他人引入的錯誤 135
5.8 Summary / 小結136
Chapter 6: Testing / 測試139
6.1 Test as You Write the Code / 一邊編碼,一邊測試140
6.2 Systematic Testing / 系統化測試145
6.3 Test Automation / 測試自動化149
6.4 Test Scaffolds / 測試腳手架151
6.5 Stress Tests / 壓力測試155
6.6 Tips for Testing / 測試心得158
6.7 Who Does the Testing / 誰來測試 159
6.8 Testing the Markov Program / 馬爾可夫程式的測試160
6.9 Summary / 小結162
Chapter 7: Performance / 性能165
7.1 A Bottleneck / 瓶頸166
7.2 Timing and Profiling / 計時和剖析171
7.3 Strategies for Speed / 加速策略175
7.4 Tuning the Code / 代碼調優178
7.5 Space Efficiency / 空間利用率182
7.6 Estimation / 評估184
7.7 Summary / 小結187
Chapter 8: Portability / 可移植性189
8.1 Language / 語言190
8.2 Headers and Libraries / 頭檔案和庫196
8.3 Program Organization / 程式架構198
8.4 Isolation / 隔離202
8.5 Data Exchange / 數據交換203
8.6 Byte Order / 位元組序204
8.7 Portability and Upgrade / 可移植性和升級207
8.8 Internationalization / 國際化209
8.9 Summary / 小結212
Chapter 9: Notation / 記法215
9.1 Formatting Data / 數據格式化216
9.2 Regular Expressions / 正則表達式222
9.3 Programmable Tools / 可程式工具228
9.4 Interpreters, Compilers, and Virtual Machines / 解釋器、編譯器和虛擬機 231
9.5 Programs that Write Programs / 寫程式的程式237
9.6 Using Macros to Generate Code / 用宏生成代碼240
9.7 Compiling on the Fly / 運行中編譯241
Epilogue / 後記247
Appendix: Collected Rules / 規則彙編249

相關詞條

熱門詞條

聯絡我們