关于Ontology与OO的区别 --- 低一点,低一点,再低一点!

业界认为Ontology与OO不是一样的东西。我认为两者其实没有本质上的区别。

Ontology起源于语义网。目前只被用来描述静态内容。但是自然语言也是用来描述的却并不只描述静态内容。

将其能力局限在静态内容的描述上是对它的误解。Ontology可以用来描述静态关系,也可以用来描述动态关系。象自然语言一样。

只要很简单地给它加上动态语义,它马上便可以用来代替面向对象的任何语言或者说升级整个编程范式。

因为显然,Ontology的表达能力比面向对象更强。作为一种描述型语言,它仍然处于与自然语言相同的地位。也就是说,它本身并没有假设任何东西。

它的唯一假设是:世间一切都是可以被“描述”的。

这样的语义其实比对象更低。前文有分析过面向对象相对面向过程等其它范式的胜出正是因为其所假设的东西更少而不是最少的结论。因为对象并不是一切。

当然描述也不是一切。

因为世间仍然存在很多我们现在没有办法描述但是我们知道它们“存在”的东西。但即使这样,“描述”仍然在认识论中处于比“对象”更低的层次。

纵观从面向过程到本体论,其实整个的发展过程就是一个“低一点”,“低一点”,“再低一点”的逻辑。

并且,软件行业的这个发展过程其实在某个意义上可能对哲学的研究有很大的反推作用(象蒯因认为的哲学本来就是在科学中发展一样)。因为这种“再低一点”的思想其本身来自哲学中的解构主义。

科学都解构了。但是哲学自己却没解构。

你可能感兴趣的:(关于Ontology与OO的区别 --- 低一点,低一点,再低一点!)