Chinaunix首页 | 论坛 | 博客
  • 博客访问: 629244
  • 博文数量: 1655
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 16800
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-28 11:10
文章分类

全部博文(1655)

文章存档

2008年(1655)

我的朋友

分类: LINUX

2008-05-28 11:34:53

More often than not, developers will stop a large project in the middle of the build stage to rethink and recode the software design so it's cleaner and more efficient. Known as "refactoring," this process eats up valuable time and money. To help offset refactoring, this book presents a new process called "prefactoring," the premise of which states that you're better off considering the best possible design patterns before you even begin your project.

Prefactoring, in essence, is the art of applying the insights gleaned from previous experience (whether yours or someone else's) when developing software to new projects. Doing so will likely save you from making costly design changes midstream--and maybe even save your job!

This practical, thought-provoking guide details prefactoring guidelines in design, code, and testing, each derived from the lessons of many developers over many years. With these guidelines, you're far more likely to create more readable and maintainable code before you reach the second-guessing stage.

To help communicate the many facets of this process, Prefactoring follows the example of a fictitious client, Sam, as he seeks to create a software system from beginning to implementation. Among the topics covered:

General development issues

Implementation classes

Object-oriented design

Creating reports via separation of concerns

Associations and states

Creating and testing interfaces

If you understand object-oriented design, and you want to save time and money by considering more efficient designs before you begin your project, Prefactoring will show you the way. It won't guarantee that you'll never need to refactor your design or code again, but you're sure to cut down on the amount of refactoring you do.

To help communicate the many facets of this process, Prefactoring follows the development of a software system for a fictitious client, named Sam, from vision to 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

If you have an object-oriented design background, you may save time by considering Ken's prefactoring guidelines before you begin your project, They won't guarantee that you will never need to refactor your design or code again, but you can cut down on the amount of refactoring you do.

阅读(138) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~