Feeds

Code Complete, Second Edition

At last, a good book about writing code

Top 5 reasons to deploy VMware with Tegile

Book review This is a book about a sorely neglected part of software development: writing code. It's not a book about the specifics of a particular language, programming paradigm or development methodology. Nor is it about UML, design patterns or data structures. It's about coding. About low-level design, about naming conventions, about all those things we spend so much of our time doing, but which are conspicuously absent from most books on development.

In that sense, Steve McConnell's Code Complete is fairly unique, and the first edition was justly acclaimed as a classic. Now a second edition - expanded and extensively re-written - confirms this status.

Code Complete

Covering every aspect of code construction, this is a mammoth volume packed to the hilt with sage advice, sample code, hard facts and figures, and sound arguments. Marrying data from countless journal papers and academic studies with war stories and anecdotes, the book does a great job in persuading the reader, rather than just laying down the law. McConnell wants to help the reader become a better developer. It's part of what makes this such a great book.

Organised into seven different sections, the topics range from metaphors for software construction to the use of pseudo-code, to variable naming, to code formatting and more. The treatment of material is comprehensive, so that even a topic such as variable naming gets a whole chapter that is both useful and interesting. Topics of religious significance, such as code formatting, also get an airing.

We could do a review that summarises the book section by section, but that would not do it justice. Instead, it's better to focus on some of the key themes. The first of these is complexity. Taming complexity is a key goal of the best developers. This means writing code that is well-structured, easy to understand and maintain. It means avoiding writing 'clever' code. This principle extends everywhere, from how you name routines and lay out your code, to what you call your variables.

Secondly, it's important to remember that code is read more often than it's written, which means making sure it's readable. Again, this means taking care with program structure, using naming conventions, commenting code and so on.

The best developers are themselves developing and learning along the way. This means striving to improve, being aware of what you are doing, keeping an eye on what's happening in the industry, and not allowing yourself to get complacent.

In addition to the technical content, the quality of writing should also be stressed. This is a huge book but it doesn't read like one. It is engaging and clear. There's sample code aplenty, with Java, C++ and Visual Basic, but the lessons the book really draws are independent of language, tools or methodologies.

There is so much more good solid material in the book, it's difficult to do it justice in a single review. Anyone who wants to improve as a developer should read it.

Code Complete, Second Editiion

Verdict: We can't recommend it enough.

Author: Steve McConnell

Publisher: Microsoft Press

ISBN: 0735619670

Media: Book

Buy this book at Cash & Carrion!

Choosing a cloud hosting partner with confidence

More from The Register

next story
Download alert: Nearly ALL top 100 Android, iOS paid apps hacked
Attack of the Clones? Yeah, but much, much scarier – report
NSA SOURCE CODE LEAK: Information slurp tools to appear online
Now you can run your own intelligence agency
Microsoft: Your Linux Docker containers are now OURS to command
New tool lets admins wrangle Linux apps from Windows
Microsoft adds video offering to Office 365. Oh NOES, you'll need Adobe Flash
Lovely presentations... but not on your Flash-hating mobe
You stupid BRICK! PCs running Avast AV can't handle Windows fixes
Fix issued, fingers pointed, forums in flames
HTML5 vs native: Harry Coder and the mudblood mobile app princes
Developers just want their ideas to generate money
prev story

Whitepapers

Go beyond APM with real-time IT operations analytics
How IT operations teams can harness the wealth of wire data already flowing through their environment for real-time operational intelligence.
Why CIOs should rethink endpoint data protection in the age of mobility
Assessing trends in data protection, specifically with respect to mobile devices, BYOD, and remote employees.
A strategic approach to identity relationship management
ForgeRock commissioned Forrester to evaluate companies’ IAM practices and requirements when it comes to customer-facing scenarios versus employee-facing ones.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Protecting against web application threats using SSL
SSL encryption can protect server‐to‐server communications, client devices, cloud resources, and other endpoints in order to help prevent the risk of data loss and losing customer trust.