Check nearby libraries
Buy this book
A compendium of practical matters of importance to working programmers.
Check nearby libraries
Buy this book
Previews available in: English
Showing 1 featured edition. View all 1 editions?
Edition | Availability |
---|---|
1
The Practice of Programming (Addison-Wesley Professional Computing Series)
February 4, 1999, Addison-Wesley Professional
Paperback
in English
020161586X 9780201615869
|
aaaa
Libraries near you:
WorldCat
|
Book Details
First Sentence
"This fragment of code comes from a large program written many years ago:"
Table of Contents
Preface
Page ix
1.
Style
Page 1
1.1.
Names
Page 3
1.2.
Expressions and Statements
Page 6
1.3.
Consistency and Idioms
Page 10
1.4.
Function Macros
Page 17
1.5.
Magic Numbers
Page 19
1.6.
Comments
Page 23
1.7.
Why Bother?
Page 27
2.
Algorithms and Data Structures
Page 29
2.1.
Searching
Page 30
2.2.
Sorting
Page 32
2.3.
Libraries
Page 34
2.4.
A Java Quicksort
Page 37
2.5.
O-Notation
Page 40
2.6.
Growing Arrays
Page 41
2.7.
Lists
Page 44
2.8.
Trees
Page 50
2.9.
Hash Tables
Page 55
2.10.
Summary
Page 58
3.
Design and Implementation
Page 61
3.1.
The Markov Chain Algorithm
Page 62
3.2.
Data Structure Alternatives
Page 64
3.3.
Building Data Structures in C
Page 65
3.4.
Generating Output
Page 69
3.5.
Java
Page 71
3.6.
C++
Page 76
3.7.
Awk and Perl
Page 78
3.8.
Performance
Page 80
3.9.
Lessons
Page 82
4.
Interfaces
Page 85
4.1.
Comma-Separated Values
Page 86
4.2.
A Prototype Library
Page 87
4.3.
A Library for Others
Page 91
4.4.
A C++ Implementation
Page 99
4.5.
Interface Principles
Page 103
4.6.
Resource Management
Page 106
4.7.
Abort, Retry, Fail?
Page 109
4.8.
User Interfaces
Page 113
5.
Debugging
Page 117
5.1.
Debuggers
Page 118
5.2.
Good Clues, Easy Bugs
Page 119
5.3.
No Clues, Hard Bugs
Page 123
5.4.
Last Resorts
Page 127
5.6.
Non-reproducible Bugs
Page 130
5.7.
Other People's Bugs
Page 135
5.8.
Summary
Page 136
6.
Testing
Page 139
6.1.
Test as You Write the Code
Page 140
6.2.
Systematic Testing
Page 145
6.3.
Test Automation
Page 149
6.4.
Test Scaffolds
Page 151
6.5.
Stress Tests
Page 155
6.6.
Tips for Testing
Page 158
6.7.
Who Does the Testing?
Page 159
6.8.
Testing the Markov Program
Page 160
6.9.
Summary
Page 162
7.
Performance
Page 165
7.1.
A Bottleneck
Page 166
7.2.
Timing and Profiling
Page 173
7.3.
Strategies for Speed
Page 175
7.4.
Tuning the Code
Page 178
7.5.
Space Efficiency
Page 182
7.6.
Estimation
Page 184
7.7.
Summary
Page 187
8.
Portability
Page 189
8.1.
Language
Page 190
8.2.
Headers and Libraries
Page 196
8.3.
Program Organization
Page 198
8.4.
Isolation
Page 202
8.5.
Data Exchange
Page 203
8.6.
Byte Order
Page 204
8.7.
Portability and Upgrade
Page 207
8.8.
Internationalization
Page 209
8.9.
Summary
Page 212
9.
Notation
Page 215
9.1.
Formatting Data
Page 216
9.2.
Regular Expressions
Page 222
9.3.
Programmable Tools
Page 228
9.4.
Interpreters, Compilers, and Virtual Machines
Page 231
9.5.
Programs that Write Programs
Page 237
9.6.
Using Macros to Generate Code
Page 240
9.7.
Compiling on the Fly
Page 241
Epilogue
Page 247
Appendix: Collected Rules
Page 249
Index
Page 253
Edition Notes
Classifications
Contributors
The Physical Object
ID Numbers
Community Reviews (0)
Feedback?February 12, 2022 | Edited by ImportBot | import existing book |
October 22, 2021 | Edited by AgentSapphire | undo merge authors |
October 22, 2021 | Edited by AgentSapphire | merge authors |
October 22, 2021 | Edited by AgentSapphire | undo merge authors |
July 22, 2018 | Edited by R. S. Doiel | Corrected author |