面向对象设计类的原则

来源:互联网 发布:研究生陪导师睡觉知乎 编辑:程序博客网 时间:2024/06/12 19:03

       我们设计类不应该是按名词来进行设计,比如门、车等等,的日常名词来设计。我们设计类,其实是一个抽象事物的过程,既然是抽象就应当高于日常的表象。

       我们设计类的,根本目的是为了我们的工程、项目设计起来更方便,扩展起来更加容易,是从业务和实际出发的。按照不同的目的,我们会对相同的事物进行不同的抽象,比如汽车,对于不同的人抽象实际上是不一样的,对于驾驶者来说,应该抽象成剩下简单的如:方向,变速,启动的基本接口,是从司机这个层次做的抽象。而对于一个维修人员来说,汽车的抽象就不一样了,那是另外层次的抽象,汽车被抽象成了各种系统,如引擎系统,制动系统,音响系统等等。

       所以说,类的划分与设计应当和做销售、产品一样从客户出发进行设计。因为你的类设计出来时要给客户使用的(这里的客户是指上层调用你代码的开发者)。


      可以说类的划分可以分为两类:客户类   和 服务类 


参照的相关文章(OO 真经):http://www.uml.org.cn/mxdx/201008032.asp