审视在你的use case 中动词和名词并指出类和方法的行为叫做文本分析
一个好的use case使用一种容易理解的语言,清淅并且精确的表述了系统的行为
注意你use case中的名词,即使它不是你系统中的类
思考你发现的这些类实现能够支持你use case 中描述的行为
use case中的动词通常是系统中对象的方法
抽象类是为了真正的实现类的占位符,抽象类定义行为,子类实现行为
无论什么时候你发现你发现一个通用行为在两个或以上的类中出现,看看是否能抽象行为到一个类中,然后重用那个行为在一个通用类中
最好的测试软件是否很好的设计的方法之一是尝试改变它
对接口编程比对实现编程要更容易扩展
对接口编码使你的代码工作和其它所有接口的子类,甚至是还没有实现的
封装帮助你从不必要的改变中保护你的类
从不频繁改变的代码中封装出可能改变的部分,封装可能改变的部分
确保每个类只有一个原因去改变,减少可能导致类改变的事物的数量
每个独立类只做一件事