》》当在试图开发或理解一个程序设计时,最好的方法就是将对象想象为“服务提供者”。程序本身将向用户提供服务,它将通过调用其他对象提供的服务来
实现这一目的。
》》将问题分解为对象集合。
》》将对象看作是服务提供者还有一个附带的好处:它有助于提高对象的内聚性。高内聚是软件设计的基本质量要求之一:这意味着一个软件构件(例如一个
对象,当然它也有可能是指一个方法或一个对象库)的各个方面“组合”得很好。
》》每个对象都有一个它所能提供服务的内聚的集合。在良好的面向对象设计中,每个对象都可以很好地完成一项任务,但是它不试图做更多的事。
》》将对象作为服务提供者看待是一件伟大的简化工具,这不仅在设计过程中非常有用,而且当其他人试图理解你的代码或重用某个对象时,如果他们看出了
这个对象所能提供的服务的价值,它会使调整对象以适应其设计的过程变的简单得多。