2011年08月02日 14:26 "@jdon007"的内容
我说过特征不是一个整体?我说过特征只能是true或false? 我压根就没有规定特征要怎么表示。我想你不妨仔细看完帖子,再回复不迟。 ...

关于特征一说,我的反对,源起你对VO的理解,从中我发现你对特征的错误认识,而我甚至先抛开VO来跟你谈何为特征了,再论证VO能不能成为特征。若果你认为整体,那么等于你自己反对你自己的在VO认识中的说法。

特别你对“花有颜色”和“花是红色”的理解,出现严重的逻辑错误,此花非彼花——后面的花是前面的花的一个实例!

“特征是为了让模型复用及精简模型而人为分离的概念,在场景中需要人为地进行合成。”特征如何让模型复用了,如何精简模型了?

“假设你是错的,那么你是错的。”
从何说起,你举出历史来,因为我不觉得我有这么说过。

“OO本身没啥错,但非得把那两个圈筘在自个脑袋上,我也不好说啥。”拿着两个圈圈,却说这不是圈圈,那我也能说啥呢?

“不关心时间,不意味着时间不存在。你可以有完全错误的时空观,甚至可以说,因为我看不见或者说我不关心,它就不存在,因为这是人意识的自由。”

也就是说,不关心就是错误的时空观?那么你所说的模型是时间函数,却与空间无关,你这个是否在砸自己脚呢?

我提出问题,是让你完善自己的学说,不是和你吵架。学说讲究严谨,不正视问题,却去装贤人不染凡尘的样子,那我没什么提出,继续你自己的玩意吧。
[该贴被SpeedVan于2011-08-02 15:31修改过]

1)花有颜色,花是红色的。“有颜色”和“是红色”就是两个特征,这么理解有何错?还是严重的逻辑错误。

2)特征就是让模型复用及精简模型而人为分离的概念。“有颜色”和“是红色”,你可以用来形容花,也可以用来形容衣服。此乃“让模型复用”;而剥离后的模型就是“花”本身,此乃“精简模型”。

3)REST架构的核心概念资源的数学描述也是一个时间函数,你可以去查看那篇博士论文。

4)定义模型是时间函数,没有说模型与空间无关。我说你今天吃饭了,没说你今天有穿衣服,你今天就赤身裸体了?

5)之所以说“假设你是错的,那么你错的”,是因为你对我对特征的理解的解释,根本不是我的理解,而且这种解释显然是错的,然后把这种错误的观点强加在我身上,说成是我的观点。这不是“假设你是错的”,然后再讨论什么是对的?是什么?我不反对问题,我是反对你探讨问题背后的态度(不先看清楚别人到底是说什么)和逻辑(在没有弄清别人的观点之前,就将自己的理解强加在别人身上)。

7)在这里我不想进行言论人身攻击或回击,这我不感兴趣。现实中如果真刀真枪干上,或许我还会感兴趣些。

赶时间,简单回复:
这是你过去的回复,绝对没有断章取义:

将特征定义为不变的值对象太狭隘了,特征可以是变量,可以定义为一个时间函数。

再比如,使用I(t)描述一个电流, 也是一个时间函数,I(t)刻画了该电流的特征。

值对象因为在概念具备独立性从实体上剥离出来,这就是值对象(特征)的内涵,其它的都是外延,包含了(非)一致性和不变性的值对象。

再比如,花有颜色,衣服有颜色,颜色就是一个特征或者值对象;花是红色的,衣服是红色,红色也是一个特征或者值对象,只是此时特征是一个常量而已。

状态特征可以从模型上剥离,正如行为特征可以从模型上剥离,在场景中根据业务规则进行凝聚,成为真正的对象。

属性是什么?是对象的特征!值对象是什么?是从对象身上凝聚剥离的特征!特征是特征吗?这问题问得我都不知道怎么回答。

-------------------------------------------------------------------
我的反对:

“特征”是说该东西的“什么是什么”。不是值对象,不是变量,也不是一个时间函数。不知是否正确,但可以粗略理解为一条等式。

I(t)描述一个电流,也是一个时间函数,这是值对象,I(t)刻画了该电流的变化规律,该电流特征是“变化规律=I(t)”,而不是“I(t)”。

值对象不是特征!

花有颜色,是指“花类”作对象看待,它有某一属性,叫颜色,即“某一属性=颜色”是特征,而非“颜色”是特征。
花是红色,此时的花不是指“花类”,而是指“某花”,它有颜色,是红色,即“颜色=红色”是特征,而非“红色”是特征。
就是因为把“花有颜色”和“花式红色”放在一起理解,把此花=彼花,才会出现“特征可以是值对象,可以是变量,可以是时间函数”等一系列错误理解。
举例,矩形长=1cm,宽=1cm,1cm就是值对象,但1cm不是矩形的特征,矩形的特征是“长=1cm”和“宽=1cm”。

我们从模型剥离出来的不是特征,而是属性而已,相当于在属性分类。

属性不是对象特征,而是类的特征(把类当对象看待时,特征只对对象而言),值对象也不是对象特征,在这里是特征组成的一部分。

2011年08月02日 17:56 "@SpeedVan"的内容
花有颜色,是指“花类”作对象看待,它有某一属性,叫颜色,即“某一属性=颜色”是特征,而非“颜色”是特征。
花是红色,此时的花不是指“花类”,而是指“某花”,它有颜色,是红色,即“颜色=红色”是特征,而非“红色”是特征。 ...

1)
花有颜色,花是指“花类”;花是红色,花是指“花对象”?这是哪里的规矩?

我说这枝花有颜色,不行吗?“颜色”就是特征,颜色就是从这支“花”(模型)上剥离的特征,凝聚特征时,就是“花有颜色”。

我说这类花是红色的,不行吗?“红色”就是特征,红色就是从这类“花”(模型)上剥离的特征,凝聚特征时,就是“花是红色的”。

2)
“花是红色”,特征剥离后为“花”;特征凝聚后变成“花是红色的”。“红色”是一种状态特征或结构特征。凝聚的伪代码表示就是(flower.color = red)。

“张三是经理”,特征剥离后为“张三”;特征凝聚后变成“张三是经理”。“经理”是一个角色,是一种行为特征。凝聚的伪代码表示就是(zhangsan.role = manager)。


模型的特征是什么?“什么”即可表示特征,而不是“特征是什么”才叫特征?属性和特征在英文中皆可译为attribute。

电流I表示为I(t) = 2t+3,2t+3就是特征。
直线L表示为 y = 2t+3, 2t+3就是特征。

在上解析几何课时,2t+3表示直线的特征;在上电路分析课时,2t+3表示电流的特征。在特定的场景中模型凝聚特征后会自然明确其含义。

如果你认为 “I(t) = 2t+3”才是特征,那么如何复用"2t+3"这个剥离出来的特征呢?

I(t) = 2t+3是特征,没错!但它只是表示电流的变化特征;除了电流(模型)外,别的模型(直线)还能复用吗?

特征关心“what"甚于"who"和"which",这也是DDD一书对Value Object的定义,只关心是什么,不关心它们是谁或者是哪一个。

再看看我对特征的定义,强调的是什么,是“相对独立”。“相对独立”的一种解释即关心“what”甚于关心“who”或“which”。

花与红色是相对对立的概念,张三与经理是相对对立的概念,才将颜色与经理剥离出来,供别的模型复用。

红色是模型的一种状态特征,经理(角色)是模型的一种行为特征。

这套原语的数学描述。
1)模型,表示为一组时间函数,包含状态特征和行为特征。
model = {f1(t),f2(t),...};
2) 特征,从模型的一组时间函数中,提取相对独立的状态特征和行为特征。
state = {f1(t),f2(t),...};
behavior = {f1(t),f2(t),...};
3) 场景,在场景模型凝聚特征持续一段时间(如从t0时刻到t1时刻)。
context => model-state-behavior = {f1(t0->t1),f2(t0->t1),...}。

特征是指一个事物异于他物得特点,英文是feature,远不是attribute。attribute是从结构化出发,feature是从相异出发,这两者完全不同。

我理解为花类,是因为你说过变量(属性)也是特征,若果你认为是该花,那好,变量是特征就没有被例证了。

你说“该花有颜色”可以,那么请注意,这是句子是“该花是有颜色的”。根据“什么是什么”,该花的一个状态是有颜色,即“状态 = 有颜色”。flower.state = HASCOLOR。“有颜色”成为一个状态描述,是一个值对象。“状态 = 有颜色”这一特征是相异于“状态 = 无颜色”或者其他状态。

“有颜色”与“红色”不是特征。只有在与事物的属性相配后,才能成为特征。因为特征不能独立存在,独立存在则脱离了相异的意义。

“如果你认为 “I(t) = 2t+3”才是特征,那么如何复用"2t+3"这个剥离出来的特征呢?”
特征复用?2t+3是值对象,是对I(t)的描述,从来不把2t+3当特征···连attribute都不是,单纯地是一个值而已。

“特征关心“what"甚于"who"和"which",这也是DDD一书对Value Object的定义,只关心是什么,不关心它们是谁或者是哪一个。”

这句话的意思是,无论你在什么时间什么地方写“1”,1还是那个1,只关心是什么,即是说1的定义、概念,而不是哪个1,这个1没有分which和who的意思,只要1的定义、概念还是1,那么无论你在什么时间什么地方复制一份,重写一份,都是指这个1。这就是值对象的定义。从这里可以看出“1还是1”,也就是说1的概念永远不变,同理说1cm这个值对象,它所指定的定义,概念是不变的,也就说明这个值对象不能变。

“红色是模型的一种状态特征,经理(角色)是模型的一种行为特征。”
先明白什么是特征再说状态特征和行为特征吧。我的观点是:反对这句话。值对象:1,红色,有颜色,都不能说明事物的特征。1说明了矩形什么?红色说明了花什么?有颜色说明了衣服什么?宽=1,颜色是红色,状态(或者说款色)是有颜色,这些才是特征。红色与黄色相异,是值对象相异,是定义概念相异,而不是实体,事物本身相异。

2011年08月03日 00:39 "@SpeedVan"的内容
1说明了矩形什么?红色说明了花什么?有颜色说明了衣服什么?宽=1,颜色是红色,状态(或者说款色)是有颜色,这些才是特征。 ...

长=1是特征?1就不是特征?颜色是红色是特征?红色就不是特征?

你这个长是指边长?还是指周长?是对角线长?还是指直径长?我从“长=1”这个特征就能知道一个圆的周长是1,而不是直径长是1?
“长=1”能完全确定所指为何?如果没有具体的语境(上下文、场景)。

花开时的颜色是红色,花谢时,花的颜色不能变成枯色?你这个红色到底说的是花什么时候的颜色?“颜色是红色”能完全确定所指为何?如果没有具体的语境(上下文、场景)。

值对象概念不变,和值对象不变,完全不是一码事。人这个概念(可以)不变,与人不能变是两码事,搞清楚了,我实在看不出前者可以推导出后者。

feature和attribute,在我看来就可视为同义词,没有哪位语言学家或哪本辞书告诉我,attribute是从结构化出来,feature是从相异出发。或许它们的用法有细微的差别,但我相信这些细微的差别也不是你这种解释。

变量是属性,我说过吗? 我说过的是属性可以用变量表示!
变量是特征,我说过吗? 我说过的是特征可以用变量表示!

花有颜色,花是红色。我实在看不出后面的花是前面的花的一个实例!
这又是哪一门逻辑?在说别人出现严重的逻辑错误,请先看看自己有没有错。

特征是从模型(事物)上人为剥离出来的相对独立的概念,在特征凝聚时,自然确定其所指为何,确定其语义。

“1”这个概念,在讨论矩形的边长时指的就是边长,在讨论矩形的面积时指的就是面积,在讨论矩形的周长是指的就是周长;在讨论矩形的对角线长时指的就是对角线长。

“长=1”这个概念,在讨论矩形的边时就是指边长;在讨论矩形的对角线时指的就是对角线长。

我从来没有规定说,1才是特征,长 = 1不是特征,如果你认为“长=1”是一个相对独立的概念,也可以剥离出来。长大于1,长小于1,都可以认为是一个特征,1也可以认为是一个特征,并且比“长=1”这个特征,更具有独立性和复用性,1可以是指长、宽、面积、周长等等。

事物的特征是什么?什么即特征?而不是“特征是什么”才叫特征。
特征的表达形式(等式只是其中一种),特征的含义的确定程度,取决我们剥离的角度和复用的目标。

如果你认为 “长=1”才是特征,而“1”就不是特征;以及你认为值对象概念不能变,就是值对象不能变。

如果你认为这种逻辑才是对的,那我也没什么好说。因为在我看看来“长=1”和“1”都是可以作为一种特征。在场景中模型凝聚特征都可以自然确定其语义。

两位争论很精彩,我发现涉及到一些本质逻辑看法的问题,如果再采取简单枚举实例的方法来表达观点,得到真理很少,只会引起不必要的误会。

推荐两位看看罗素的《数学原理》,我理解为《数学原语》,数学只是一种表达工具,其背后的逻辑分析哲学应该如今公认的公理。

http://wenku.baidu.com/view/112a462cb4daa58da0114a09.html

banq,你说的那些在uda1341提到时就开始关注了。

jdon007在谈论特征时,老是把特征单独拿出来说,如“长=1”,本来在实体(句子)当中“长=1”和“宽=1”这些已经被指定为边长了,他偷换成“对角线”概念。描述该矩形的一个特征的句子是:“该矩形的长=1”(长的概念是一早就被指定了),能描述“该矩形”的必须是“长=1”,我真不明白jdon007说的“1”如何来描述“该矩形”。

而真要说用指称哲学来说明,我本人尚学不多,不过还可以用用,不过感觉这里很难用上,毕竟单纯形容词不能成为摹状词,只能单纯逻辑方面说。

好了转过头面对jdon007:
请看清楚原文,我说我认为是花类,是因为你(面对jdon007)说“变量(属性)也是特征”,若果不理解为花类,那么你说的“变量(属性)也是特征”也就没有例证,也就站不住脚。若果真要认为“该花有颜色”,那么“变量也是特征”便无法证明,可以忽略,这样有没有逻辑问题就可以放置一边。

特征是用来区别事物的,也就是个性的体现,不可能单独存在的,请不要再拿“长=1有几种理解”来解析特征,当“长=1”成为特征时,“长”的意义已被确定。

例:花是红色的。“是红色的”就是花的“特征”。用等式写法有“isRed = true”、“color = red”……。这些等式不能孤立存在,必须与花关联起来。我们只有说什么是花的特征,花的特征是什么,不能单独说什么是特征。

说一下“属性”,“属性”只是描述有什么样的结构,“isRed = true”中,isRed就是一个属性,它有isRed这样的一个命题,属性不管这个命题是真是假。回过头来说另一个例子:花不是红色的。那么这个时候,是“不是红色的”是花的特征,还是一样是“红色”是花地特征呢?isRed = false,color ∈ ~red,color = x(x∈ ~red),全集为所有颜色。


[该贴被SpeedVan于2011-08-03 12:59修改过]
[该贴被SpeedVan于2011-08-03 13:02修改过]

我这几天看了这个论坛上标题为“一点纯哲学”的那个帖子后,有一种想法,感觉用来分析领域模型很实用;

redorange提到:
1)我们认识到的总是事物的某一方面,对象只是我们认识事物的某一方面,一个事物被我们抽象成了一个多面体,事物的不同方面总是同时存在。

基于这个观点,我认为我们平时所讨论的对象绝不是真正的对象,而是我们所关心的事物的“某一方面”。

2)关于“内部属性和外部属性、自然属性和社会属性”的观点。自然属性依附于自然存在的事物上,社会属性依附于人类创造的事物上。如对个人而言,自己的姓名、相貌、身高、体重,这些属性离开你之后就没有意义了。但是有些属性是间接的,比如你获得了某某荣誉称号、你的财产、你的英语等级。他们分别于某次评选、某些收益、某些考试相联系。这些信息分别存在于荣誉证书、银行存折、等级证书之中。这些外部属性不宜直接作为自己的属性,因为它们与你不是内聚关系,而是耦合关系。

基于这个思想,我觉得就很好理解很多和场景有关的状态属性或者jdon007所说的“行为特征”中的“行为结果”部分该如何设计了。

比如图书馆借书的例子:BorrowedBook不需要定义和存在。因为借书过程涉及到两个模型:Card(Account) + Book;然后借书之后的结果就是导致某本书被借了。以前我们是通过BorrowedBook这样的角色或jdon007的描述就是“行为结果”来表示被借的书。实际上,被借的书是一个场景发生的结果,是一个不可能在改变的事实;那么如何表示该事实呢?很简单,就是用借书记录来表示;因此,整个借书场景就变得很简单的,场景参与者:Card(Account) + Book;场景发生后的结果,放在一个单独的对象中:借书记录;

其实现在想来,借书记录、考试成绩单、荣誉证书、银行存折、等级证书这些都是表示某个场景活动的结果。这些都是事实,这些事实对象描述了场景发生后的一些结果信息。而借书、某次评选、某次考试这些则是场景活动;

所以,我的观点是,我们不应该把场景活动发生后参与者的一些与本次场景活动相关的信息包含在参与者内部,而是应该设计独立的“事实对象”来表达活动的结果。这样子做,我就不会在头疼于该把属性放在模型上还是角色上了。
[该贴被tangxuehua于2011-08-03 13:07修改过]

2011年08月03日 13:00 "@tangxuehua"的内容
基于这个观点,我认为我们平时所讨论的对象绝不是真正的对象,而是我们所关心的事物的“某一方面”。...

某一个方面体现在领域的界定。DDD一书中,开头就以地图来说明了,地球上有许多东西,为什么地图只表现了其地理等。但领域是大方面,内在事物也存在自己的“某方面”,所以角色来划分这些小方面。


2011年08月03日 13:00 "@tangxuehua"的内容
比如图书馆借书的例子:BorrowedBook不需要定义和存在。因为借书过程涉及到两个模型:Card(Account) + Book;然后借书之后的结果就是导致某本书被借了。以前我们是通过BorrowedBook这样的角色或jdon007的 ...

BorrowedBook角色是相对于不是BorrowedBook而言的。也就是若果只有借书场景,则可以忽略BorrowedBook角色。从另外一方面说,BorrowedBook角色,内聚了成为BorrowedBook角色的条件,在构造BorrowedBook对象时,所有条件必须通过才能构造成功,当然你可以把这些写到场景,以淡化这样的角色。

你这里所指的事实是指场景发生,即是一个场景被new成功之后,这个场景就是事实。至于记录是事实的记录,它记录过去发生的事实。


[该贴被SpeedVan于2011-08-03 14:29修改过]
[该贴被SpeedVan于2011-08-03 14:59修改过]

2011年08月03日 14:21 "@SpeedVan"的内容
花是红色的。“是红色的”就是花的“特征”。用等式写法有“isRed = true”、“color = red”……。这些等式不能孤立存在,必须与花关联起来。我们只有说什么是花的特征,花的特征是什么,不能单独说什么是特征。 ...

我倒一下浆糊,这个问题是不是罗素谈的专名和摹状词的区别呢?如果是专名就可以孤立存在,如果是摹状词,就必须与花关联了。

对于一个语句中的限定摹状词,当它是用来述说有关凡是如此这般(适合于该摹状词)的人或物的某件事情时,这是归属性使用;当它是说话者为了使听者能够辨认出他所谈论的是谁或是什么东西时,这是指称性作用(引用,四色中PPT)。
[该贴被banq于2011-08-03 16:05修改过]

2011年08月03日 15:52 "@banq"的内容
专名和摹状词 ...

我给uda1341解释原语的时候,是从“模型 = 专名”,“特征 =摹状词”这个角度解释的,因为他熟悉这套东西。某种角度,“特征复用”可以理解为“摹状词复用”。

你们熟悉OO,在这边就从OO的角度解释给你们听。

之所以“见人说人话,见鬼说鬼话”,是为了减少语言差异造成交流的障碍。

既然你们也熟悉或感兴趣,那我就从“事实”这个角度解释解释。

“摹状词”可以作为一个独立的概念而存在(如果不能独立,就没有“摹状词”这一说了)。“美”,你可以用来描述“女人的容貌”,也可以用来描述“花的姿态”, “1”,你可以用来描述“圆的周长”,也可以描述“矩形的边长”,确定语义取决语境(上下文与场景),也取决于听者看客的认知习惯和能力。

“花有颜色”与“花是红色”,前花与后花的关系是类与实例的关系?这种错误理解是把摹状词“颜色”与“红色”的关系,当成了“前花”与“后花”的关系。在Java的泛型中有类似的情景,LinkedList<Object>与ArrayList<Thread>, 从Thread是Object的一个子类,是不能推定LinkedList是ArrayList的一个子类。

数学上,(x1(t),x2(t),....),表示一条特征向量。这是数学常用的定义,可以翻翻矩阵分析、泛函分析、线性系统之类的书。

别跟我说,你没有明确这个特征向量是刻画那种事物或事物的那个方面?这是数学的抽象性或“无为”,其具体含义在将其应用到具体场景时,自然确定。抽象,因复用而来,为复用而去。“无之以为用,有之以为利”,数学可以说深谙其精髓。

banq其实不必强调“去数”。数学已经不是宠儿,一些伟大的数学家,早预感到了数学自身的危机,比如内部四分五裂,比如确定性丧失都让他们忧心忡忡。对此,有些数学家试图去发现或发明“元数学”,一统天下四分五裂的局面,这算是未来数学发展的方向或理想之一吧。“元数学”可以理解为“数学的原语”。我个人是喜欢数学的(没有选择数学作为专业或许是一种遗憾),但对数学的困境也只能徒叹奈何。

特征是用来描述东西,至于你用它来描述什么东西(事物或事物的某一个方面),它可以不关心。

特征的定义,如果要让这个定义具有普适性,就不能让它包含太多东西,但也不能什么都不说。数学的形式化的定义,一组时间函数,已经是简化到不能再简化的地步,再简化就是虚无主义了。

既然大家都开始有点接受“世界是事实的总和”的观点,那么接下来的问题显然是怎么使用这种世界观?最基本的问题之一:怎么描述事实?这将回到语言本身的研究,比如句子分为几种类型,包含哪些成分?

可是人会仅仅满足于对事实的陈述?人对智慧的渴求必然致使他尝试从繁杂的事实中找出真相和规律,而这要需要对事实进行剖析与解构,

四象图,是找出共性的一个工具。从诸多事实中,对事实进行解构,抽象共同的事物(模型),找出事物共同的特征(状态特征和行为特征),在场景中(上下文,具体的语境中)将事物相关的事实完整的呈现出来。

在前面的帖子我说过,这套原语可以从“象”、“数”、“理”的三个角度进行解释,这就是从“理”的角度进行解释。之前从“理”的角度着墨较少,是考虑到uda1341跟诸位争论的“下场”。

但是,如果认为只有事实可以描述或回归语言本身,会不会出现“用人类理性发明的语词只能谈论现象,不能谈论世界的本质。”(康德语)?

再者,即便我们不关心世界的本质。描述事实的语言具有确定性吗?显然不一定,一句话(一个事实的描述),每个人可能会有不同的理解。这和每个人对事物的理解一样,盲人摸象,各执一词。

2011年08月03日 22:09 "@jdon007"的内容
我给uda1341解释原语的时候,是从“模型 = 专名”,“特征 =摹状词”这个角度解释的,因为他熟悉这套东西。某种角度,“特征复用”可以理解为“摹状词复用” ...

有能共同承认的基础,我们就能讨论,否则争论争去都是穷举实例进行归纳证明,容易产生误解。

我个人认为:四色原型图实际是罗素的摹状词这套原语的直接体现,什么是des描述?就是摹状词;什么是PPT,实际是专名。是否可以认为:实体是一种专名,而值对象是一种摹状词呢?

当然,jdon007认为你的理论中“模型”是专名的话,特征是摹状词,那就可能和四色重合,可以认为你对四色有深刻理解。我当然乐见jdon007这样喜欢思考有自己主见的人能提出很好的独立见解,但是实在因为很多基本逻辑西方人早就思考过,出生时间不一样,如果jdon007出生在罗素那个时代,你就是中国的罗素。

虽然,摹状词和专名这么分类简单,但是关键问题是专名和摹状词经常被混淆,就是著名的悖论,比如金山不存在等,所以,这是最难的,我看你们争论也是纠结在这个方面,所以,给你们提出思路供参考。目的还是大家共同进步吧,无所谓什么下场,和你们我们,大家在这里能讨论如此深入,都是缘分,30年修得同渡船啊,都是一条船上的,哈哈。

罗素提出谓词法来进行专名和摹状词的辨识,这是目前大家公认的基本逻辑方法,谓词法让我们通过基本逻辑分析向确定性迈出重要一步,数学那么多公式都是遵循谓词法,谓词法能够减少副作用,也是OO推荐的方法。

其实,为什么我表面上显得反对数学,崇尚自然语言表达方式,也是因为中国教育的生搬硬套,数学至上的思维对大家影响太深,甚至蒙蔽双眼无法认识到数学背后的基本逻辑,中国现在就好似罗素悖论之前的西方。中国人缺少的不是知识,而是逻辑。


[该贴被banq于2011-08-04 08:44修改过]

啥是摹状词?形容词不是摹状词!花是红色的,“红色的”不是摹状词,“那个有性质F的个体”xFx,所以“一朵红色的花”或者“那红色的花”,这才是摹状词,跟形容词差远了。特征在摹状词上,但不是摹状词!“一朵红色的花”是代表着一个个体,而非特征。DESC只代表了描述,但没有说明怎样去描述,DESC的描述方法:(一朵红色的花,一朵假的花)或者(是红色的,是假的),所以我只能说DESC里面包含特征,而不是DESC就是特征。花地特征,“是红色的”。

以上得DESC即使以摹状词而存在,不能证明DESC是特征。


“模型”是专名的话,特征是摹状词。
“模型”这一词是专名的话,那么摹状词指向应该都是“模型”而不是特征,因为特征不是“那个有性质F的个体xFx”。模型是一个XXX的东西。“一个XXX的东西”是摹状词,XXX描述的是东西的特征。“一朵红色的花”当中,“(颜色)(是)红色的”才是特征。再举个对比的例子,“一朵不是红色的花”,“不是红色的”便是花的特征,转成代码是flower.isRed = false;


“摹状词”可以作为一个独立的概念而存在(如果不能独立,就没有“摹状词”这一说了)。“美”,你可以用来描述“女人的容貌”,也可以用来描述“花的姿态”, “1”,你可以用来描述“圆的周长”,也可以描述“矩形的边长”,确定语义取决语境(上下文与场景),也取决于听者看客的认知习惯和能力。

摹状词不是特征,这段话第一句对我来说没有任何反对意义。

“美”不是摹状词,“美”对应到代码上就是值对象,你可以描述女人的容貌,而不是女人。去掉容貌的定语,则是容貌美,而不是女人美。
容貌美,女人美:容貌.is美=true; 女人.is美=true;,可见这里容貌和女人是同等地位的,都是作为一种事物。特征就是:“is美=true;”。
若果觉得用“isXX = true;”的方式不妥,则可以换一个(加入评价属性为载体):容貌.评价=美;女人.评价=美(这就是美是值对象的时候)。

特征是用来描述东西,至于你用它来描述什么东西(事物或事物的某一个方面),它可以不关心。

严重反对,特征是描述东西的,这个没有问题,但一个带有描述性的话语要想成为特征,必须与事物进行关联,特征不能单独存在。“没有手,没有脚”这是一句话,不是谁的特征。只有当与“狗”关联时——“狗没有手,没有脚”,“没有手,没有脚”便成为“狗”的特征,特征是区别事物而存在的,没有事物,根本不存在特征一说。
[该贴被SpeedVan于2011-08-04 09:31修改过]

BTW
解析一下,为什么经常会游isRed和color=red两种写法:

这是因为,当我们说“是红色的”的时候,这是在说真假命题的时候,即谈论“是否是红色的”,所以写isRed = true;

而color=red时,是在说“颜色是红色的”,并不是谈真假。

这两者的确有细微差别,但整体上对特征讨论没有影响。
[该贴被SpeedVan于2011-08-04 09:40修改过]

“摹状词”是名词,在关系数据库中,它对应于一个关系查询结果。

这个概念在关系数据库中有对应(虽然只是能表达),但是在OO中完全没有。

有摹状词之后,语言的表达力大大提高了。

比如在一个平面上有一些形状,三角形,四边形,圆,表如下:

颜色;位置;大小;形状
红色;(10,20);5;三角形
蓝色;(10,30);10;三角形
黑色;(20,0);3;四边形
红色;(10,30);9;四边形
蓝色;(0,50);10,圆
黑色;(30,30);9,圆
绿色;(20,0);9,圆

使用摹状词,我们可以做一些复杂的操作:

1 把红色三角形的大小增加到原来的一倍
“红色三角形”就是一个摹状词也对应一个关系查询,这句话的含义是:
旧的事实:“红色三角形”的大小是X。
查询可以得到X的值是5
新的事实:“红色三角形”的大小是2*X
也就是:“红色三角形”的大小是10

对应多条记录的摹状词
2 把黑色形状的位置右移10
“黑色形状”也是一个摹状词,对应一个关系查询,但可以查询到多条结果,同样可以通过
将旧的事实改写为新事实的方式。

这里可以看出来,这对应于OO中消息的muti-cast,这里的消息多分派机制非常地灵活,一对一,一对多,
多对一,多对多,随便怎么样做都可以。

最重要的是,通过构造摹状词,程序语言的语法和自然语言的语法变得一致了。

这也是为什么关系理论比OO要深刻得多的原因。