http://www.j-hi.net
柏拉图理性与感性二元论是他的核心思想,而这一理论从旦生之日起就注定意义深远,影响着中世纪的基督教,影响着14世纪的文艺复兴,影响着17世纪的启蒙思想,我想同时也影响着当下的我们这些程序员。
简单说来柏拉图二元论就是他认为有两个存在的世界--感性世界与理性世界--在感性世界中是人们可感知的一切事物,
而理性世界是对我们所感知事物的高度抽象。例如有许多个体的动物,我们对它们都能够真确地说“这是一只猫”。我们所说的“猫”这个字是什么意义呢?显然那
是与每一个个体的猫不同的东西。一个动物是一只猫,看来是因为它分享了一切的猫所共有的一般性质。没有象“猫”这样的一般的字,则语言就无法通行,所以这
些字显然并不是没有意义的。但是如果“猫”这个字有任何意义的话,那末它的意义就不是这只猫或那只猫,而是某种普遍的猫性。这种猫性既不随个体的猫出生而
出生,而当个体的猫死去的时候,它也并不随之而死去。事实上,它在空间和时间中是没有定位的,它是“永恒的、唯一的”。而存在于感性世界中的猫不过是这只
“猫”摹本。柏拉图认为在理性世界中感性世界任何事物都有一个完美的、永恒的、唯一的、理想的东西与之相对应。个别的猫都分享着“猫”的性质,但却多少是
不完全的;正是由于这种不完全,所以才能有许多的猫。“猫”是真实的,而个别的猫则仅仅是现象。他认为如此完美的、永恒的东西只有神才能创造出来,所以神
创造了理性世界,人也不例外;而感性世界的芸芸众生无过是神所创造的理性世界不断克隆。
细细想来也真是好笑,对于我们这些程序员来说不正象柏拉图理性与感性世界一样嘛。我们把一个一个的类写在硬盘中,就是好象理性世界规范着每个class的
属性(field)与行为(method),每个类都是唯一的、“永恒”不变的。当运行时系统会按照我们写的类将其实例化加载到内存中形成对象,想象着对
象在内存中生生灭灭不正象柏拉图所说的感性世界嘛,对象就是类的实例,每个对象都会略有不同,但他们都共享着同一个类的性质,不过是类的摹本。然而创造出
这个程序化的“理性世界”的人是谁呢?是我们,我们这些程序员,对于程序来说我们就是神--秩序的缔造者。
因此我们应该感到无比骄傲,是我们亲手创造了一个“完美的、永恒的、唯一的、理想的”理性世界;同时我们也应该审慎要对我们所创造的“理性世界”负责任,以保证我们写出的代码是真正优雅的、完美的。因为在程序的世界中我们就是神!