|
发表于 2010-8-5 22:03:00
|
显示全部楼层
Re:万物皆为一个函数
"2
你那种看待事物的方式是片面的、孤立的、机械的。
比如你说的“通讯录中的人”,那是通讯录中的人,而不是人,所以OO是较低层的,而并非在描述自然。
但面向过程则不。"
呵呵,说得貌似很牛逼.但你在实际应用中有没有这么一个"人",而它的属性是不确定的?如果是不确定的,往往是因为需求的不确定性导致的,就算很不确定,还是不会超出一定的范围的,编程是实际应用,而实际应用不会超出一定的范围,不像理论,理论上一个人确实有N种属性,关键是你的应用里面,人的角色是什么.所以我觉得,你说的这么一个绝对的人,脱离了具体的实际环境的人的属性,才是片面的,孤立的吧,因为你想全面化绝对化,但是事实上属性是需要灵活的分析处理的,分析是动态的,不追求全面和绝对,强调全面绝对的N种所有属性是空洞的,无意义的.
多态既然是抽象设计,那应该是底层的,到了上层才会变得具体.这样的抽象往往更灵活(因为我依赖的是抽象的类,跟具体的实现无关),复用性也更高.
"1 我说过,"方法"是一个动词,动词怎么可能是属于某个名词呢?"
我靠,类和方法,属性,这些,跟语法没有关系.
是的,光从语法上来讲,一个动词不可能属于某个名词.
但是"类"和"方法"不仅仅是语法上的东西,"一个类拥有一种方法",不管这个方法是主动的,还是被动的,还是所有的,也就是说,不管从语法上怎么讲,主谓也好,谓宾也好.但是从OO的角度来讲,就是一个类拥有一种方法,这个方法可以是任何动作.就是定义了一个类有一种动作,而不关心动作的具体含义.动作具体含义跟OO本身的思想无关,是由具体的开发来确定的.OO只关心一个类拥有某些属性和某些方法(动作).
如果非要从**语法**上扣,那么可以说,方法体现的是这个类的能力,能不能做,有方法就有这个能力,所以这么说:一个类拥有某些属性(数据)和处理属性的能力,这些能力即是类的方法(动词).而"对象.方法"中的"."表示"使用"该能力.
表格可以"添加",操作员也可以"添加",关键是看你的设计里面,有没有操作员,需不需要操作员,从数据封装性上和具体开发的便利性上综合考量利弊,引入"操作员"这个类是否合适. |
|