当你开发或者理解一个程序设计时,最好的方法之一就是将对象想象为“服务提供者”。你的目标就是去创建能够提供理想的服务来解决问题的对象集合。如果我可以将问题从表象中抽象出来,那么什么样的对象可以马上解决我的问题呢?
将对象看作是服务提供者还有一个好处:它有助于提高对象的内聚性。高内聚时软件设计的基本质量要求之一:这意味着一个软件构建的各个方面组合的很好。因此,每个对象都有一个它所能提供服务的高内聚的集合,在良好的面向对象设计中,每个对象都可以很好的完成一项任务,但是他并不是试图作更多的事。
将对象看作是服务提供者还有一个好处:它有助于提高对象的内聚性。高内聚时软件设计的基本质量要求之一:这意味着一个软件构建的各个方面组合的很好。因此,每个对象都有一个它所能提供服务的高内聚的集合,在良好的面向对象设计中,每个对象都可以很好的完成一项任务,但是他并不是试图作更多的事。