HOME

TheInfoList



OR:

''Code Complete'' is a
software development Software development is the process of conceiving, specifying, designing, programming, documenting, testing, and bug fixing involved in creating and maintaining applications, frameworks, or other software components. Software development invol ...
book, written by Steve McConnell and published in 1993 by
Microsoft Press Microsoft Press is the publishing arm of Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the ...
, encouraging developers to continue past code-and-fix programming and the
big design up front Big Design Up Front (BDUF) is a software development approach in which the program's design is to be completed and perfected before that program's implementation is started. It is often associated with the waterfall model of software development. ...
and
waterfall model The waterfall model is a breakdown of project activities into linear sequential phases, meaning they are passed down onto each other, where each phase depends on the deliverables of the previous one and corresponds to a specialization of tasks. ...
s. It is also a compendium of software construction techniques, which include techniques from naming variables to deciding when to write a subroutine.


Summary

McConnell defines the main activities in construction as detailed
design A design is a plan or specification for the construction of an object or system or for the implementation of an activity or process or the result of that plan or specification in the form of a prototype, product, or process. The verb ''to design'' ...
, construction planning, coding and debugging,
unit testing In computer programming, unit testing is a software testing method by which individual units of source code—sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures&md ...
,
integration Integration may refer to: Biology *Multisensory integration *Path integration * Pre-integration complex, viral genetic material used to insert a viral genome into a host genome *DNA integration, by means of site-specific recombinase technology, ...
and
integration testing Integration testing (sometimes called integration and testing, abbreviated I&T) is the phase in software testing in which individual software modules are combined and tested as a group. Integration testing is conducted to evaluate the complianc ...
. Although he does not dismiss the value of other aspects of software development such as requirements and documentation, McConnell emphasises the construction of software due to several reasons. Within the view of the book, construction is a large part of software development, as the central activity within software development and can significantly improve the productivity of a programmer when focus is directed towards it; in addition, the source code is seen as defining the operation of the software, with documentation implicated when code and documentation are opposed. Lastly, the book contends that construction is the exclusive activity which is guaranteed to remain completed. The techniques of a good programmer are also given throughout the book. The whole part seven of the book is about software craftsmanship (layout, style, character, themes and self-documentation). The other six parts of the book are: laying the foundation, creating high-quality code, variables, statements, code improvements and system considerations.


Reception

''Code Complete'' has received outstanding reviews, being widely regarded as one of the leading must-reads for software developers. It won a
Jolt Award ''Dr. Dobb's Journal'' (''DDJ'') was a monthly magazine published in the United States by UBM Technology Group, part of UBM. It covered topics aimed at computer programmers. When launched in 1976, DDJ was the first regular periodical focused on ...
in 1993. There are also negative reviews about the length and style of the book, which runs to over 900 pages and goes into detail on many topics. The first edition has been superseded by Code Complete 2. The first editions can be found used and are still relevant for programmers using C, Pascal and GW-BASIC


Editions

* First edition (1993) * Second edition (June 2004)


References

{{Reflist


External links


Steve McConnell's websiteCode Complete Checklists
1993 non-fiction books Software development books Microsoft Press books