The Practice of Programming (Paperback)
暫譯: 程式設計實務 (平裝本)

Brian W. Kernighan, Rob Pike

買這商品的人也買了...

相關主題

商品描述


Description

With the same insight and authority that made their book The Unix Programming Environment a classic, Brian Kernighan and Rob Pike have written The Practice of Programming to help make individual programmers more effective and productive. This book is full of practical advice and real-world examples in C, C++, Java, and a variety of special-purpose languages. Kernighan and Pike have distilled years of experience writing programs, teaching, and working with other programmers to create this book. Anyone who writes software will profit from its principles and guidance.

Back to Top


Appropriate Courses

Intermediate Programming courses, Programming Languages.

Back to Top


Table Of Contents

1. Style.
Names.
Expressions and Statements.
Consistency and Idioms.
Function Macros.
Magic Numbers.
Comments.
Why Bother?

2. Algorithms and Data Structures.
Searching.
Sorting.
Libraries.
A Java Quicksort.
O-Notation.
Growing Arrays.
Lists.
Trees.
Hash Tables.
Summary.

3. Design and Implementation.
The Markov Chain Algorithm.
Data Structure Alternatives.
Building the Data Structure in C.
Generating Output.
Java.
C++.
Awk and Perl.
Performance.
Lessons.

4. Interfaces.
Comma-Separated Values.
A Prototype Library.
A Library for Others.
A C++ Implementation.
Interface Principles.
Resource Management.
Abort, Retry, Fail?
User Interfaces.

5. Debugging.
Debuggers.
Good Clues, Easy Bugs.
No Clues, Hard Bugs.
Last Resorts.
Non-reproducible Bugs.
Debugging Tools.
Other People's Bugs.
Summary.

6. Testing.
Test as You Write the Code.
Systematic Testing.
Test Automation.
Test Scaffolds.
Stress Tests.
Tips for Testing.
Who Does the Testing?
Testing the Markov Program.
Summary.

7. Performance.
A Bottleneck.
Timing and Profiling.
Strategies for Speed.
Tuning the Code.
Space Efficiency.
Estimation.
Summary.

8. Portability.
Language.
Headers and Libraries.
Program Organization.
Isolation.
Data Exchange.
Byte Order.
Portability and Upgrade.
Internationalization.
Summary.

9. Notation.
Formatting Data.
Regular Expressions.
Programmable Tools.
Interpreters, Compilers, and Virtual Machines.
Programs that Write Programs.
Using Macros to Generate Code.
Compiling on the Fly.

Epilogue.
Appendix: Collected Rules.
Index. 020161586XT04062001


Back to Top

商品描述(中文翻譯)

描述
Brian Kernighan 和 Rob Pike 以其著作《The Unix Programming Environment》的洞察力和權威性,撰寫了《The Practice of Programming》,旨在幫助個別程式設計師提高效率和生產力。本書充滿了實用的建議和 C、C++、Java 以及各種專用語言的實際範例。Kernighan 和 Pike 提煉了多年來撰寫程式、教學和與其他程式設計師合作的經驗,創作了這本書。任何撰寫軟體的人都能從其原則和指導中獲益。

適合的課程
中級程式設計課程,程式語言。

目錄
1. 風格。
名稱。
表達式和語句。
一致性和慣用語。
函數巨集。
魔術數字。
註解。
為什麼要費心?

2. 演算法和資料結構。
搜尋。
排序。
函式庫。
Java 快速排序。
O-表示法。
增長陣列。
列表。
樹。
雜湊表。
總結。

3. 設計與實作。
馬可夫鏈演算法。
資料結構替代方案。
在 C 中建立資料結構。
生成輸出。
Java。
C++。
Awk 和 Perl。
性能。
教訓。

4. 介面。
逗號分隔值。
原型函式庫。
供他人使用的函式庫。
C++ 實作。
介面原則。
資源管理。
中止、重試、失敗?
使用者介面。

5. 除錯。
除錯工具。
好線索,簡單錯誤。
無線索,困難錯誤。
最後手段。
無法重現的錯誤。
除錯工具。
其他人的錯誤。
總結。

6. 測試。
在撰寫程式碼時進行測試。
系統化測試。
測試自動化。
測試支架。
壓力測試。
測試提示。
誰負責測試?
測試馬可夫程式。
總結。

7. 性能。
瓶頸。
計時和分析。
提升速度的策略。
調整程式碼。
空間效率。
估算。
總結。

8. 可攜性。
語言。
標頭和函式庫。
程式組織。
隔離。
資料交換。
位元組順序。
可攜性和升級。
國際化。
總結。

9. 符號。
格式化資料。
正規表達式。
可程式化工具。
解譯器、編譯器和虛擬機。
撰寫程式的程式。
使用巨集生成程式碼。
即時編譯。

後記。
附錄:收集的規則。
索引。 020161586XT04062001