对序列化的理解(靠谱):
具有内在联系的数据模型,是不能直接进行网络传输和存储的,要进行传输或者存储,就必须把这个模型转换成易于记录和传输的格式(表象),所以要进行序列化操作(比如serializer序列化的结果是字典,字典只是对象的一种表现形式或者说压缩形式,而不是对象本身。我们可以通过这样的表象,来还原对象的结构,从而实现数据模型的网络传输和存储)。
广义上去理解面向对象的编程思想(个人见解,错误之处望指正):
面向对象的编程思想,这个面向的对象,也可以理解为一种模型,解决问题的逻辑模型。代码只是这个模型的表象或者说压缩格式,某个Python程序和某个Java程序都能实现这个逻辑模型,那么这个Python程序就是模型的一种表象或者说压缩格式,Java程序是另一种压缩格式。一个逻辑模型可以构造非常多表象或者说压缩格式,不同语言实现的表象只是方便我们去存储和自动化地实现这个模型,真正解决问题的,是表象背后的逻辑。
更大胆的推理(渐渐开始胡扯):
逻辑从哪来?逻辑从人的大脑、人的思考中来。所以说,不妨做一个更大胆的推理:上述逻辑模型也只是人的思想的表象或者说压缩格式,只是为了便于作用于客观世界而被具象化的工具,真正的原型或者本体,是人的思想。
既然逻辑模型是人解决问题的工具,那么拓展到对事物的认知上,可不可以这么想:我们对猫的认知、对桌子的认知,本质上也是两种不同的逻辑模型?——我们之所以认为猫是猫而不是桌子,是因为它更符合我们众多认知模型中被称为‘猫’的那一种模型,它具有‘猫’模型的大多数特征,所以我们才能够把猫和桌子区分开来。
而对于狼和狗的区分,就不像猫和桌子那么容易了,小孩可能会分辨不出狼和狗的区别,而有经验的大人可以分辨,因为人的生活经验训练着人的认知模型,让人渐渐体会到相似事物之间的细微差异,从而把‘狗形状生物’细分成‘狼’和‘狗’两个模型。
推广开来,我们对一种事物认知越详细,越能分辨出细微差异,渐渐地,原本的一个模型,随着我们对其认知的细化,裂变成了两个、三个、多个不同的模型。现在电商的各种细分领域也印证了这一点。用一句不太恰当的类比来概括就是:世上本来没有路,走的人多了,就变成了路。
人对世界的认知是不断裂变、精细化的过程,那么倒推回去呢?人最开始,对世界是怎么认知的呢?
——“起初,神创造天地。地是空虚混沌,渊面黑暗;神的灵运行在水面上。神说:”要有光,就有了光。神看光是好的,就把光暗分开了。”;
——“天地浑沌如鸡子,盘古生其中。万八千岁,天地开辟,阳清为天,阴浊为地。”
人之初,除了光明和黑暗,可能真的是一无所知,彻底懵逼吧。
从一无所知到完善的认知体系,是不是说,所有外部存在都是思想的外延?或者说,我们认知的世界应该并不是客观世界,而是客观世界在我们思维中的投影,是客观世界经过了各种认知模型“序列化”后的“表象”、“压缩格式”?
既然人的认知是表象,那么不同的人有不尽相同的认知模型体系,同样的客观世界投射在不同人思维中,经过这些认知模型的“序列化”,形成了各种各样的“表象”。——纵然共享同一环境实体,却不能实现跨语言通信。
又得到相似的结论——人和人本质上是生活在不同主观世界的,是不可能心意相通的。又想起《EVA》——
律子:“你知道“豪猪的窘境”吗?”
葛城美里:“豪猪?那个浑身带刺的?”
律子:“豪猪虽然想向对方传达自己的温暖,可是越是靠近,越是因为身上的刺而使双方受到伤害。同样也适用于人类。现在的真嗣君,心中某处害怕受到这种伤害,所以才会变得胆小懦弱吧。”