| |
Book_CodeComplete
Page history last edited by Anonymous 3 yrs ago
Book Details
Code Complete 2
A practical handbook for software construction
- Steve McConnell
- Microsoft Press
- June 2004
如何進入程式設計的專業領域
Code Complete 1st edition 中文版
- 譯者:施威銘研究室
- 出版社:旗標
- 出版日期:1995 年 11 月
Top
Preface
| The gap between the best software engineering practice and the average practice is very wide—perhaps wider than in any other engineering discipline. A tool that disseminates good practice would be important. —Fred Brooks |
Primary Concern In This Book
- narrow the gap between the knowledge of industry gurus and professors and common commercial practice
- shortcut the knowledge delivery process and make key discoveries available to the average programmer
Who Should Read This Book?
- give insight into why you've had problems in the past and show you how to avoid problems in the future
- help you keep big projects under control and maintain and modify software successfully as the demands change
Experienced Programmers
- a comprehensive, easy-touse guide to software development
Technical Leads
- if you read this book and think about each issue, only rarely will someone bring up a construction issue that you haven't previously considered
Self-Taught Programmers
- give you insight into effective programming practices
Students
Where Else Can You Find This Information?
There is nothing mysterious about the effective, high-powered programming techniquesused by expert programmers. In the day-to-day rush of grinding out the latest project, however, few experts take the time to share what they have learned. Consequently, programmers may have difficulty finding a good source of programming information.
Key Benefits of This Handbook
Complete software-construction reference
- discusses general aspects of construction such as software quality and ways to think about programming
- gets into steps in building classes, ins and outs of using data and control structures, debugging, refactoring, and code-tuning techniques and strategies
Ready-to-use checklists
- includes dozens of checklists you can use to assess your software architecture, design approach, class and routine quality, variable names, control structures, layout, test cases, and much more.
State-of-the-art information
Larger perspective on software development
- give you a chance to rise above the fray of day-to-day fire fighting and figure out what works and what doesn't
- inform and stimulate your thinking about your projects, enabling you to take strategic action so that you don't have to fight the same battles again and again
Absence of hype
- presents balanced discussions of each technique's strengths and weaknesses
- provides the objective information you need to make good decisions about your specific circumstances
Concepts applicable to most common languages
Numerous code examples
- contains almost 500 examples of good and bad code
- learn best from examples
Access to other sources of information
- "Additional Resources" sections describe other books and articles you can read as you pursue the topics you find most interesting
Book website
- Updated checklists, books, magazine articles, Web links, and other content are provided on a companion website at cc2e.com
Why This Handbook Was Written
- need for development handbooks that capture knowledge about effective development practices
- the biggest gains in software-development quality and productivity will come from codifying, unifying, and distributing existing knowledge about effective software-development practices
Construction Has Been Neglected
Construction Is Important
- Code construction typically makes up about 65 percent of the effort on small projects and 50 percent on medium projects.
Construction accounts for about 75 percent of the errors on small projects and 50 to 75 percent on medium and large projects. Any activity that accounts for 50 to 75 percent of the errors presents a clear opportunity for improvement - small-scale coding errors account for some of the most expensive software errors of all time, with costs running into hundreds of millions of dollars
- construction is the only activity that's guaranteed to be done
- there has to be construction to run a program
Top
Chap 1 Welcome to Software Construction
The construction process might include some aspects of planning, designing, and checking your work, but mostly "construction" refers to the hands-on part of creating something
What Is Software Construction?
Distinct Activities in Software Development
- Problem definition
- Requirements development
- Construction planning
- Software architecture, or high-level design
- Detailed design
- Coding and debugging
- Unit testing
- Integration testing
- Integration
- System testing
- Corrective maintenance
Tasks in Construction
- Verifying that the groundwork has been laid so that construction can proceed successfully
- Determining how your code will be tested
- Designing and writing classes and routines
- Creating and naming variables and named constants
- Selecting control structures and organizing blocks of statements
- Unit testing, integration testing, and debugging your own code
- Reviewing other team members' low-level designs and code and having them review yours
- Polishing code by carefully formatting and commenting it
- Integrating software components that were created separately
- Tuning code to make it smaller and faster
Important Nonconstruction Activities
- management
- requirements development
- software architecture
- user-interface design
- system testing
- maintenance
Why Is Software Construction Important?
- Construction is a large part of software development
construction typically takes 30 to 80 percent of the total time spent on a project - Construction is the central activity in software development
Requirements and architecture are done before construction System testing is done after construction - With a focus on construction, the individual programmmer's productivity can improve enormously
- Construction's product, the source code, is often the only accurate description of the software
In many projects, the only documentation available to programmers is the code itself Requirements specifications and design documents can go out of date, but the source code is always up to date - Construction is the only activity that's guaranteed to be done
no matter how rushed or poorly planned a project is, you can't drop construction Improving construction is thus a way of improving any software-development effort, no matter how abbreviated
Key Points
- Software construction is the central activity in software development; construction is the only activity that's guaranteed to happen on every project.
- The main activities in construction are detailed design, coding, debugging, and developer testing.
- The quality of the construction substantially affects the quality of the software.
- Your understanding of how to do construction determines how good a programmer you are.
Top
Chap 2 Metaphors for a Richer Understanding of Software Development
The Importance of Metaphors
Metaphor, Modeling
Book_CodeComplete
|
|
Tip: To turn text into a link, highlight the text, then click on a page or file from the list above.
|
|
|
|
|
Comments (0)
You don't have permission to comment on this page.