The online computer book shop for UK & Europe                                   

   Books Home | About Us | Index | Next Record | Browse

 
  

Tel: 0121 706 6000 

Static Book Details Page - Computer Manuals Website

 Prefactoring
  

  Prefactoring by Kenneth Pugh

  • Published by: O'REILLY & ASSOCIATES
  • Author: Kenneth Pugh
  • Page Count: 220
  • Group: SOFTWARE ENGINEERING
  • ISBN: 0596008740/9780596008741
  • Published: Sep 2005

Our Price: 14.67
Discount: 30%
RRP: 20.95 

For Latest Pricing and Availability Click Here
 

The online computer book shop for UK & Europe

Book store with some thing for everyone

Book Information and Description:

Prefactoring
Prefactoring approaches software development of new systems
using lessons learned from many developers over the years.
It is a compendium of ideas gained from retrospectives on
what went right and what went wrong in development. Some of
these ideas came from experience in refactoring.
Refactoring is improving the design of existing code to make
it simpler and easier to maintain.
This practical, thought-provoking guide details prefactoring
guidelines in design, code, and testing. These guidelines
can help you create more readable and maintainable code in
your next project.
To help communicate the many facets of this approach,
Prefactoring follows the development of a software system
for a fictitious client, named Sam, from vision through
implementation. Some of the guidelines you'll encounter
along the way include:
When You're Abstract, Be Abstract All the Way
Splitters Can Be Lumped Easier Than Lumpers Can Be Split
Do a Little Job Well and You May Be Called Upon Often
Plan Globally, Develop Locally
Communicate with Your Code
The Easiest Code to Debug Is That Which is Not Written
Use the Client's Language
Don't Let the Cold Air In
Never Be Silent
Don't Speed Until You Know Where You Are Going

Preface
1. Introduction to Prefactoring
      What Is Prefactoring?
      The Three Extremes
      The Guidelines Explored
      The Context for This Book
2. The System in So Many Words
      Meet Sam
      Reinvention Avoidance
      What's in a Name?
      Splitters Versus Lumpers
      Clumping
      Abstracting
      Prototypes Are Worth a Thousand Words
3. General Development Issues
      Start with the Big Picture
      Interface Contracts
      Validation
      Code Communicates
      Consistency Is Simplicity
      A Prefactoring Attitude
      Don't Repeat Yourself
      Documentation of Assumptions and Decisions
      Dealing with Deviations and Errors
      Speeding
      The Spreadsheet Conundrum
      Tools Are Tools-Use Them Wisely
4. Getting the Big Picture
      The Rest of the Story
      Process
      The Initial Design
      Global Planning, Local Designing
      Testing Functionality
      Testing Quality
      Security
5. Got Class?
      Categories and Classes
      Declaration Versus Execution
      Appropriate Inheritance
      Communicate with Text
      More Than One
6. A Few Words on Classes
      Honor the Class Maxims
      Three Laws of Objects
      Need Determines Class
      Polymorphism
      One Little Job
      Policy Versus Implementation
      Extreme Naming
      Overloading Functions
7. Getting There
      Where We Are
      Separating Concerns
      Migrating to the New System
8. The First Release
      The Proof Is in the Pudding
      Retrospective Time
      The System as It Stands Now
      Operations Interface
      Abstract Data Types
      Configuration
      Testing
      Dealing with Deviations and Errors
      A Little Prefactoring
      The First Released Iteration
      Sometimes Practice Does Not Match Theory
      The Rest of the Classes
9. Associations and States
      Sam's New Requirement
      Who's in Charge?
      The State of an Object
10. Interfaces and Adaptation
      The Catalog Search Use Case
      Designing the Interface
      Interface Development
      Interface Testing
      Interface Splitting
      Something Working
11. Zip Codes and Interfaces
      Adaptation
      Pass the Buck
      Unwritten Code
      Indirection
      Logging
      Paradigm Mismatch
12. More Reports
      Fancy Reports
      Change Happens
      Exports
13. Invoices, Credit Cards, and Discounts
      The Next Step
      The Language of the Client
      Security and Privacy
14. Sam Is Expanding
      The Second Store
      A New Development
      The Third Store
      Goodbye Sam
      Generality
15. A Printserver Example
      Introduction
      The System
      The Message
      Testing
      Logging
      Still More Separation
      Epilogue
16. Antispam Example
      The Context
      Spam Checking
      The ReceivingMailServer
      ReceivedMailExaminer
      The Full Flow
17. Epilogue
a. Guidelines and Principles
b. Source Code
index