如何训练自己面向对象思维模式

原创
2017/11/02 22:23
阅读数 831

如何训练自己面向对象思维模式

背景

面对接手的项目,浏览代码提交历史记录之后,我深深陷入了沉思。
因为它缺乏设计,并且实现混乱。
是什么因素导致在经历不少工程师的设计与实现之后,仍然(甚至更加)混乱不堪?
如果仅仅从单纯的工程角度看,那么似乎根本原因在于工程师“缺乏”面向对象思维能力?
本文仅仅从提升工程师个人能力角度,思考如何训练自身的面向对象的思维能力。

结构化思维与面向对象思维

从计算机技术的发展演化历史进程,我们可以领略到结构化思维到面向对象思维的演进。
计算机从处理简单的数值计算,发展到处理复杂计算能力。
从数值计算问题领域,扩展到更多,更大的问题领域。
最初数值计算问题,数值本身就是一个简单的值,因此程序设计讲究的是过程抽象即结构化思维。
同样的,由原来的结构化思维方式,发展出来面向对象的思维方式。
这是由计算机技术处理问题领域的不断扩展至现实生活的方方面面,引出的面向对象思维模式。
因为现实世界,问题的主体往往是现实生活的客体,而结构化思维方式将客体的行为与属性分离。
而面向对象的思维方式,更加适合抽象现实生活的客体。客体有属性与行为,对象亦有属性与行为。

训练方式

两种思维方式,都包含“分而治之”思想。
对于面向对象思维方式,核心就是“对象”。
训练的方法就是,识别与分离对象,而后建立对象之间的链接,先分而后合,即是所谓“分而治之”。

更进一步谈面向对象

如果我们意识到计算机发展历史与两种思维模式的演化历史,就可能清楚的明白:结构化与面向对象是因为现实问题的不同,而产生的不同的解法思维。它们之间是一种互补的作用。
面向对象的核心,就是“对象”,进而围绕对象的关系,建立连接。
设计模式,同样是围绕对象以及对象的关系,建立连接。
展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部