Code Complete: A Review

2011 Blog AvatarBetween online iOS programming courses, downloaded Stanford University courses, and various programming books, I’ve learned a bit of programming in iOS and objective-C. There’s more to learn, of course, but I have a good foundation to work with. When I thought about my own future projects I realized, however, that I don’t know how to manage a larger project, since all my programs so far have been very small. Where do you even start with a larger project? How do you manage new versions of the project? How do you construct the program so that changes in the program don’t require a lot of re-writing? I needed some help in general software design and development.

If you read this blog regularly, you won’t be surprised that I turned to a book to get help. I found Code Complete: A practical handbook of software construction, by Steve McConnell (Microsoft Press, 2004) on Amazon.com. The title sounded like what I needed, and it had very good reviews.  According to the author, the book is intended to “narrow the gap between the knowledge of industry gurus and professors on the one hand and common commercial practice on the other”. Code Complete is about everything from defining the project, to initial project management issues of programming, to software construction, good practices in naming methods and variables, and commenting within the software to enhance readability. In other words, the book covers it all, in a style that is readable and understandable even for a beginning programmer like me. The code examples are in C++ and Java, which I don’t know much about, but they are similar enough to objective-C that I can figure out what he means. The book is strewn with references to academic research articles about programming so that the diligent reader can go back to the original sources, but is digested and put into plain language for those of us who aren’t career computer scientists.

Code Complete is a big book, over 900 pages with index, and it will take me a while to read, but after going through a couple of chapters, I’m glad I picked it up. I don’t think I will probably read the whole book cover to cover, but will instead read parts as needed, since not every chapter is relevant to my situation. The book is well-organized and lends itself to reading this way. In all, Code Complete would be a valuable purchase for any programmer who wants to learn best practices in how software is constructed.

This entry was posted in Books, Reviews and tagged , , , . Bookmark the permalink.