Code Reading: The Open Source Perspective, Volume 1

Front Cover
Addison-Wesley Professional, 2003 - Computers - 495 pages
6 Reviews
You've got a day to add a new feature in a 34,000-line program: Where do you start? How can you understand and simplify an inscrutable piece of code? Where do you start when disentangling a complicated build process? How do you comprehend code that appears to be doing five things in parallel? You may read code because you have to, to fix it, inspect it, or improve it. You may read code the way an engineer examines a machine, to discover what makes it tick. Or you may read code because you are scavenging, looking for material to reuse. Code-reading requires its own set of skills, and the ability to determine which technique you use when is crucial. In this book, Diomidis Spinellis uses more than 600 real-world examples to show you how to identify good (and bad) code: how to read it, what to look for, and how to use this knowledge to improve your own code.
 

What people are saying - Write a review

User ratings

5 stars
4
4 stars
1
3 stars
1
2 stars
0
1 star
0

User Review - Flag as inappropriate

if you wanna make a habit of READING good code, you will write better code yourself

Contents

VI
1
VII
2
IX
5
X
6
XI
7
XII
9
XIV
10
XVI
12
XCIV
215
XCV
224
XCVI
225
XCVII
228
XCVIII
230
XCIX
234
C
237
CI
239

XVII
13
XVIII
14
XX
15
XXII
17
XXIII
19
XXIV
25
XXV
28
XXVI
32
XXVII
34
XXVIII
37
XXIX
39
XXX
43
XXXI
45
XXXII
51
XXXIII
54
XXXIV
60
XXXV
61
XXXVII
62
XXXIX
63
XL
65
XLII
67
XLIII
70
XLIV
72
XLV
74
XLVI
75
XLVIII
76
L
78
LI
80
LIII
81
LIV
82
LV
84
LVI
87
LVII
89
LVIII
91
LIX
93
LX
95
LXI
96
LXII
101
LXIII
105
LXIV
107
LXV
111
LXVI
113
LXVII
116
LXVIII
117
LXIX
125
LXX
131
LXXII
134
LXXIII
137
LXXIV
139
LXXVI
140
LXXVIII
143
LXXIX
150
LXXX
154
LXXXII
156
LXXXIII
162
LXXXIV
165
LXXXV
169
LXXXVI
172
LXXXVII
177
LXXXVIII
179
LXXXIX
181
XC
189
XCI
197
XCII
202
XCIII
210
CII
240
CIII
241
CIV
243
CV
254
CVI
256
CVII
260
CVIII
266
CIX
267
CX
268
CXII
273
CXIII
275
CXIV
279
CXV
282
CXVI
283
CXVII
285
CXIX
289
CXX
291
CXXI
292
CXXII
293
CXXIII
296
CXXIV
300
CXXV
313
CXXVI
318
CXXVII
319
CXXVIII
323
CXXIX
325
CXXXI
328
CXXXII
329
CXXXIII
330
CXXXIV
331
CXXXV
333
CXXXVI
337
CXXXVII
339
CXXXVIII
340
CXXXIX
343
CXL
346
CXLI
355
CXLII
357
CXLIII
360
CXLIV
365
CXLV
370
CXLVI
375
CXLVII
376
CXLVIII
379
CXLIX
380
CL
382
CLI
388
CLII
396
CLIII
397
CLIV
399
CLV
403
CLVI
405
CLVII
413
CLVIII
415
CLIX
416
CLXI
417
CLXII
418
CLXIV
419
CLXV
422
CLXVIII
423
CLXIX
425
CLXX
445
CLXXI
459
CLXXII
491
Copyright

Other editions - View all

Common terms and phrases

References to this book

All Book Search results »

About the author (2003)

Diomidis Spinellis has been developing the concepts presented in this book since 1985, while also writing groundbreaking software applications and working on multimillion-line code bases. Spinellis holds an M.Eng. degree in software engineering and a Ph.D. in computer science from Imperial College London. Currently he is an associate professor in the Department of Management Science and Technology at the Athens University of Economics and Business.