|
发表于 2010-8-5 04:19:00
|
显示全部楼层
Re: Re:万物皆为一个函数
instemast: Re:万物皆为一个函数
还有一个问题是,OO这玩意本身,也不是逻辑层的。而是一种实现。
所以实际上对OO的实现,就是对实现的实现...
抽象是为了代码复用和灵活,通常都说VB是基于对象的,而不是面向对象的.因为他不支持多态,没有抽象.前期抽象和后期绑定差别很大. 还举刚才那个例子,如果我用OO,Item的Use方法,有新的Item类进来,这段代码照样可以用,**理论上不需要任何修改**.它不关心具体的Item类是什么,只关心去调用他的Use方法,至于这个类的Use方法干了什么,我不关心,我这里的逻辑就是使用物品.但是如果是OP或者是后期绑定,那么,我不仅要添加数据结构,而且这段代码在每添加一个物品类型之后,就要多一个case 分支,把使用物品的过程放在这里,慢慢堆,**代码是有更大维护开销的**...instemast兄,这个肯定是有区别的吧.
你说人的那个例子,呵呵,晕了,抽象设计离不开具体需求分析,人到底需要哪些属性,是跟需求有关的好吧.不能泛谈.根据特定范围内的需求再说属性.不然没意义了.比如通讯录中的人,它的属性当然是一些联系信息了.游戏中的人,属性就是HPMP等等了.你脱离了具体的分析范围,就没有办法谈属性的选择了,好比你说得万物皆为一个函数.个人感觉是没啥意思的.OO没错是一种实现,而这种实现体现了OO的思想.
阿弥陀佛,我实在是太堕落了,在这里装逼也不老老实实研究技术,罪过罪过. [em6] |
|