对象概念对软件解决方案具有莫大的好处,在设计优秀合理的情况下尤其如此。你可以只编写一次代码而在今后反复重用,而在非OOP的情况下你则多半要在应用程序内部各个部分反复多次编写同样的功能代码。所以说,由于面向对象编程减少了编写代码的总量,从而加快了开发的进度同时降低了软件中的错误量。
用来创建对象的代码还可能用于多个应用程序。比方说,你的团队可以编写一组标准类来计算你的可用资源,然后用这些代码在所有需要同类对象的解决方案中创建对象,比如客户定单接口、股票价值报表和发给销售队伍的通知等等。
OOP的另一优点是对代码结构的影响。像继承之类的面向对象概念通过简化变量和函数的方式而便利了软件的开发过程。OOP可以更容易地在团队之间划分编码任务。同时,由于采用OOP,辨别子类代码的依附关系也变得更简单了(比如说继承对象的代码)。此外,软件的测试和调试也得以大大简化。
但是OOP也存在一些固有的缺点。假如某个类被修改了,那么所有依赖该类的代码都必须重新测试,而且还可能需要重新修改以支持类的变更。还有,如果文档没有得到仔细的维护,那么我们很难确定哪些代码采用了父类(被继承的代码)。假如在开发后期发现了软件中的错误,那么它可能影响应用程序中的相当大部分的代码。
面向对象编程在编程思想上同传统开发不同,需要开发人员转变传统开发中所具备的惯性思维方式。对一个有经验的OOP开发队伍来说,采用OOP的好处是显而易见的。如果你正在考虑转向OOP,那么你必须保证已经拥有了富有经验的主要开发人员能负责地检查软件中的缺陷和体系结构。
下面我们就看看OOP技术到底能为你做些什么;了解了解有关的概念和术语。