人类认知这个世界的开始并不是开始于人类成为人类的时刻,应该是生命开始诞生的时候就开始了,因为我们对世界的认知中,有部分已经刻画在我们的基因里面。在这里,我并不想写认知的历史和哲学,因为一是功底不够,二是我的目标是写学编程。但由于编程本质上也是认知世界的一部分,因此,我想我应该被允许从这里开始我们的编程之旅。当生命具有自我意识的时候,其实就代表生命可以把自己从环境中区分开来,当然,前提是事物是可区分的,即事物具有生命感官可区分的特性(属性和行为)。分类是我们认知这个世界最基本的手段,而分类的基础就是事物可描述的特性。事物的特征很多,基于现实容量(脑容量,存储介质等)和计算(包含思考)的能力,我们不可能把所有的特征都记下来,我们会根据我们的认知目的,从这些属性中选取一些可以表征这类事物的关键特征,来作为分类的依据,当然这种特征本身也应该是可识别的(只有可识别的特征才能作为分类的依据)。这种过程实际上就是对目标事物进行抽象的过程。抽象和泛化是我们在编程中最常用的两种设计手段,也是面向对象编程的核心思想。表征事物的特征很多,这些特征可以分成行为特征和状态属性。在这种认知过程中,我们学会了符号化事物,符号化本身就是一种约定和制定规则的过程,从图画,声符到文字,有一个发展的过程。这个过程本身就是一种编程,只是不是由计算机来执行,而是人手工进行而已。因此,计算机的出现是一种必然的结果。我们在对获
...
继续阅读
(18)