谈谈为何面向对象很少普及

本文探讨了面向对象在大型项目中难以普及的原因,包括缺乏理论支持和工程指引、抽象代码理解难度、系统抽象注解需求、硬性映射真实事物、边界上下文管理、资源分配、团队对代码质量的追求以及重构与测试驱动开发的实践。同时,提到了面向对象继承的滥用问题,并建议学习领域驱动开发以应对复杂系统的设计挑战。
摘要由CSDN通过智能技术生成

写了很多代码,碰到过很多项目。我发现在一些小型一点的项目中面向对象可以达到很好的效果,但是在一些大型一些的项目中却很难大面积推行,我想了一下可能有下面的原因。

面向对象的开发理念缺乏理论支持和工程指引。

估计任何一个大学学习计算机或者相关专业的学生都学习或者接触过面向对象。但是在学校课程中给到学生的无非就是三大特性,如果碰到好一点的老师可能就会提及一下SOLID原则。在企业中做项目,关于如何对需求进行抽象和设计很多时候都是技术员各自发挥,而很少有想过引进相关理论去做指引,这样很有可能最后导致就是大型项目无法实现好的抽象从而提高整体的质量。

抽象代码难以被大多数技术人员所理解

在大型项目里面总有一些同事是能够很好的对需求进行抽象并且表达成代码的。但是很多时候大型项目都需要代码可以被任何其他程序员理解和维护。这样抽象了的代码就不能很直接的被其他程序员所理解,在一定程度上面提高了项目管理的难度,这是对系统进行抽象不被项目管理青睐的其中一个原因。

需要对于系统抽象的注解和说明

对于同一件事情,一千个人有一千种看法,对于同一个需求,一千个程序员会有一千种抽象的方式。这种抽象的方式必须要通过有效的方式记录下来,在开发之前让同Team的同事大家都理解和认可了这种抽象方式,这样在后面开发和维护的时候才能让团队有一致的认识以及可以大家一起贡献代码。所以UML,设计以及设计的宣讲在团队里面十分重要。

硬性地对真实事物的映射

在小型项目,因为需要处理的逻辑不复杂,按照真实事物来搭建模型还是可行的。但是在大型系统里面,要处理的事物十分复杂,如果尝试用代码映射整个真实事物会把代码带来大量无谓的复杂性。对象模型只能是对于真实世界事物的抽象,只要抽象的方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值