写点什么

3 种面向“对象”编程,你是哪一种?

发布于: 2021 年 06 月 06 日
3种面向“对象”编程,你是哪一种?

OOP,即面向对象编程,想必是每一位软件工程师都绕不开的话题,各大专业书籍上深入浅出的描述,面试时常常被发起的提问,同行交流和辩论主题,铸就了它在 IT 界无所不知的传说。

然而,我们今天所要探讨的 3 种面向对象编程,他的含义局限了很多,更多是 3 种编程时的“追求”和“格局”。他们分别是“面向代码可编译编程”、“面向功能可用编程”和“面向业务成功编程”。


一、三种“面向对象编程”的描述


  • 面向功能可用编程

在当今的软件工程师行列中,大部分都会“面向功能可用编程”。他的主要特点是:

A、要求代码可以正常运行;

B、业务功能按照设想的流程能够一步步完成;

这一类工程师是绝大部分从业者的缩影,诚然,从专业要求来讲,他们是合格的。他们往往具备以下能力和素养:

A、过硬的至少是符合岗位要求的专业技能

B、对自己所负责的部分具备良好的责任心

C、他们往往具备并追求技术架构能力


  • 面向代码可编译编程

然后,很不幸,随着软件项目的周期越来越短,在各种“敏捷”思想的推动下,部分工程师逐渐丧失了对“质量”的要求,也表现的越来越“随意”,责任心变成了很难得的品质。

这部分群体,目前更多关注的是自己的代码是否能够编译通过,仅此而已。剩下的运行是否符合预期,各种场景下表现是否正常,各种条件输入是否都有确切的输出,等等等等,这些需要耗费时间和精力去设计、构造数据和环境,并多番验证的“苦力活”,他们似乎应该交给下游那一批测试人员去完成,自己只需要安稳的坐着,等等 BUG 的到来,然后试探性的修复,再让他们去“试一试”。。。。。。

软件研发是一件对严谨和细致要求极高的岗位,这样的态度显然不合符岗位的要求,因此他们是不合格的,是需要被教育、警告甚至予以淘汰的。


  • 面向业务成功编程

令人欣慰的是,现在越来越多的从业者开始走出了技术的“本位”,拥有更广阔的视眼和更高的格局。

他们不仅仅关注功能是否能用,“好用”才是他们的目标。他们会站在客户的一方,用批判性的思维仔细的审查目前的流程是否是最优的,一切繁琐的、隐晦的流程或步骤是否可以简化再简化。

其次,他们喜欢调研用户,但不以用户的表述为唯一标准,他们会结合自己的思考和分析,洞察用户诉求背后的真实意图,并尝试结合最新的科技成果,用最具性价比的方式为客户提供超出预期的产品或服务。

再次,他们喜欢获得反馈,表扬也好,意见更好,批评也乐于接受。他们会想方设法手机信息并加以分析,从而指导下一步的决定。

最后,他们往往喜欢“算账”,计算市场增长率、市场占有率,以及各项财务指标。

像这些行业内的佼佼者,他们往往具有以下素养:

A、过硬的专业技能和对前沿技术的关注

B、良好的产品思维

C、优秀的业务架构能力

D、一定的商业视角


二、三种“面向对象编程”的态度

对于团队中的“面向代码可编译编程”的群体,我们要以教育改善为主,着重提升他们的责任心、严谨态度和技术热情,推动他们向“面向功能可用编程”群体进步。

对于团队中的面向功能可用编程的成员,需要不断强化他们的产品思维、业务架构能力,并推动他们深入了解行业基本面。这部分群体,可以用作开发主力。

对于团队中面向业务成功编程的“珍稀物种”,需要重点培养并委以重任,以核心骨干或研发负责人的岗位,让他们历练和发挥。



作为软件研发人员,“面向代码可编译编程”是禁区,“面向业务成功编程”才是鲜花夹道的彼岸,而这之前,需要拓宽我们的思维,并升华格局。

发布于: 2021 年 06 月 06 日阅读数: 357
用户头像

一枝有思想有深度的芦苇 2011.02.27 加入

一名有文化素养的IT从业者

评论

发布
暂无评论
3种面向“对象”编程,你是哪一种?