面向对象思想可能是错的
Posted rootcn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象思想可能是错的相关的知识,希望对你有一定的参考价值。
面向对象编程方法在宣传中最大优点是代码复用和数据封装。实现代码复用核心技术是继承。继承这种技术在短时间内看,是达到了代码复用的效果,然而在更大范围内来看,实际上限制了代码复用。
因为,我认为是在目前编程领域中,继承是最强烈的代码耦合。数据和方法封装也是非常强烈的耦合。
这样造成的问题是,在一个继承体系内的类,不能单独拿到继承体系外面去用。比如GUI里的文本编辑框不能拿到web里去用。GUI是运行在桌面系统里面的,DOM是运行在浏览器里面的。造成这个问题的最根本原因是,桌面GUI是一个继承体系,DOM也是一个继承体系,两个体系是互相孤立的。因此在两个体系内,在做着重复的事情。
同样道理,一个类里面的方法,不可以拿到类外去用。
如果想要一个文本框的代码能同时用在GUI和DOM中,只有打破继承体系才有是可能。windows是没希望了。linux还有可能。
怎么打破继承体系呢?很简单,就是不要继承就可以了。假如让你设计一套GUI框架,但是禁止你使用继承,你会怎么设计呢?动脑想一想,不算太难。
以上是关于面向对象思想可能是错的的主要内容,如果未能解决你的问题,请参考以下文章