面向对象设计的一点经验–针对新人
基本是每招一个新人到组内,工作中总要跟他们说下面向对象设计的一些基础原则。书本或网上的文章有很多讲面向对象设计的,它们都涉及到了,但并没有突出来说,很多新人虽然都学过,但大都没抓到点。
- 对象可以看做人,我们人在工作中一定是做自己职责内的事,不做职责外的事。别人的事,我们不干。所以,这里的重点是,设计一个对象的时候,要想好它是干什么的,分清楚各类之间的职责。
- 接口是用来完成对象所承担的职责的,也是对象所能做的事的体现。
- 我们设计对象及接口时,只设计能完成功能的最小集合。就是说,没有这个对象或接口功能就没法完成。如果去掉一个对象或接口,功能还能完成,就说明这个对象或接口是多余的。看过成熟的第三方库的人可能会疑惑,那些成熟的库都提供了重复的方便的接口,与你的理念不一致啊!这里将的这个原则,用于设计之初,帮助抓住重点;减少不必要的干扰及工作。