深刻感受到大家都在“搭积木”,是的,我们都在用别人做好的工具或作“积木”来拼凑成一个个工程。
这样做,我们就只需学习那些“积木”的用法就可以实现工程,确实大大提高了生产力,为工程的竣工省下不少时间,从而更大盈利。
遗憾的是,我们却离“创造积木”的深层思想本质远了很多(如:为什么积木要这样设计,这样设计的好处坏处是什么,综合各种因素的话这样设计是最好的吗?)
我不甘心只用别人的东西,所以在有空时我就会自己做一些如小型数据库,多媒体系统,编译器等。在这样的实践过程中我都深刻体会到同类型的一流作品的设计模式及他们的设计者的思维模式,就像在与他们进行强烈的思想交流,让我受益匪浅。
计算机语言-这里把它称为语言实在是太贴切了
我之前的那篇《.NET 实现游戏修改器》的评论中,有人说最好用C/C++来实现。其实用更“轻量级”的架构也可以实现,如VB6。
不少人被C/C++那层强悍的外表蒙蔽了。
语言是一种表达——我在参加聚会时发现,周围的人的词汇量都差不多,可有的人说话常常让人觉得无聊甚至不顺耳,没什么听众;而有的人却能维持大量听众;我想其区别在于思想上:对所谈论话题的了解、观点、深度等,最重要的是综合他们并通过嘴巴表达出来。对计算机说话时不也一样吗?
语言是一种途径——有好多文档资料永远不会出现中文版,这时只能不停提升自己的英文水平从而通过英语来学习;计算机语言往往和平台架构绑定,所以区别每个平台架构的优略势很重要,从而为达到目的选择最优路径。
推荐大家一本书,薄薄的一本,名字叫《The Pattern on the Stone ,The Simple Ideas that Make Computers Work》,中文译名《通灵芯片 计算机运作的简单原理》 ,作者:W.Daniel Hillis。它解答了我无数的困惑,并还让我有想用水管和水来造台“水流计算机”的冲动。
摘段来分享:
石头上我蚀刻了一幅图案,内有几何图形种种,在不明者眼中,显得神秘而又复杂,但我明白,只要布局正确,这块石头将被赋予一种特殊的能力,即对一种至今无人说过的咒语作出反应。我用这种语言提问,石头会显灵应答:那是一个我用符咒创造的世界,一个在石头图案内想像的世界。
哲学家格雷戈里·贝特森讲信息定义为“生异之异(The difference that makes a difference)”。换句话说,信息异于我们选择用来表示意义的差异之中。例如,在原始的电器计算器中,信息是以电流流通与否造成的灯亮灯灭来表示的。信号的电压、电流方向是无关的。相关的只是导线载送两种可能的信号之一,其中一种信号是使灯亮起来。我们选来表示意义的差异——按贝特森的定义,生异之异——就是电流的流通与否。贝特森德定义很精辟,但对我来说,一直含有更多的意义。在我四十年的生涯中,世界发生了极大的变化。我们所看到的大部分变化,无论是商业、政治、科学或哲学,无不由信息技术的发展所引起或促成。当今的世界,许多事务都已发生变异,但生异之异者始终是计算机。
近来,人们普遍把计算机看成是一种多媒体装置,能将各种形式的媒体——文本、图像、动画、声音综合或结合在一起。我感到这种肤浅看法大大低估了计算机的潜力。确实,计算机能综合处理各种媒体,但计算机的真正伟力在于它不仅能处理概念的表示形式,而且能处理概念本身。令我惊异的不在于计算机能存储图书馆的浩瀚藏书量,而是计算机能察知本书所述的各种理念之间的关系——不在于计算机能显示飞鸟或星系自旋的照片,而是计算机能想像和语言创造了这些奇迹的物理定律将导致的结果。计算机不只是一台先进的计算器或一架高级照相机、或一支神奇的画笔,计算机是一种能促进、拓展我们思维进程的工具,计算机是一种具有想像力的机器,可从我们为它输入的概念出发,演绎到我们人脑至今未到过的远方。