当前位置:我的异常网» 编程 » 从电脑编程灵感中得到的启发

从电脑编程灵感中得到的启发

www.myexceptions.net  网友分享于:2013-11-27  浏览:1次

从计算机编程灵感中得到的启发

建霖编程序灵感来的时候想到的:

A 灵感:人之所以成为高级物种是因为懂得创造和使用工具。

1 创造工具/使用工具/干活 创造企业/管理企业/雇员

2 将几百年的科技结晶凝聚的战争工具用于战场/将先进的工具用几年的时间去研究它的原理 将所有的力气聚集于一点爆发出来/将强大的力量分成很多步缓冲手段卸掉 前者是将很长时间累积的科技能量和积蓄的身体力量在很短的时间很小的一点释放出来,后者是将很强大的能量通过时间和空间的稀释从而获得并掌握这种能力。例如火、电、原子能

3 再引申一下,我们的学习也是这样。平时是学会使用(前辈们创造的)工具的时候,考试是检验你使用工具熟练程度的时候。我们的文明进步就是对改造自然工具的不断进步。——我们的身体是最原始的工具,动物只会进化自己的身体,而这种进化是缓慢的,人懂得创造工具,而改进工具相比身体的进化,是迅速得多的。

B 灵感:计算、记忆和给出算法的学生,在信息时代哪个最有前途?

计算机的作用:解决运算能力和存储记忆能力。我们只需要写出算法告诉计算机该怎么做。得到的启发:在信息时代,最有潜力的学生既不是最善于计算的,也不是最善于博闻强记的,而是善于给出问题解决思路的(写出算法的),因为计算机已经帮我们解决了前面的两个困难。

C 灵感:以人的DNA和计算机代码类比来认识世界。

我们的身体构造是严格按照DNA来组织的。而DNA的编码正如程序的编码嵌套一样,手是由好几个部分组成的,而每个不同的部分又可以分成很多很小的部分,正如不断嵌套的函数,每个函数可以由多个不同的函数组成。就像俄罗斯嵌套瓷娃娃,也像我们世界的组成方式。实际上我们世界是由一些最基本的物质组成的,就像计算机中最原始的二进制编码,然后往上是汇编语言,高级程序语言,然后组成过程、函数,函数再形成一个个对象。这就好比基本的物理粒子组成一个复杂的人。再举一个例子,我们的知识瀚如烟海,因此我们将知识写成一本本的著作,然后给书添加章节和目录,然后再按书名添加书目,再按类别整理成一块块的种类。由此想到了:任何东西和事物都是由这种从大到小、从粗到细、从简到繁的方式组成的,我们不必从最细粒度去整理和分析,因为最细粒度都是最原始最基本的颗粒,它本身不含更有有用的、冗余的信息。信息本身蕴含的秘密集成在颗粒的组成方式上。如果我们从最细粒度出发,而没有一个框架图的话,会陷入数据的海洋。这些数据我们很难找到其中的规律。而事实上,我们最重要的就是发现这些数据的组成规律。往往是这些组成规则决定了组成后的粒子的功能和属性。是如何组合的,是如何层级嵌套的,这样我们就能站在更高的粒度去观察和分析它,发现它的本质规律。我们在化学的层面上来看物质之间的反应,就像我们将许多函数组成一个个函数或对象后再编码一样,如果从物理粒子层面解释化学反应,就如同将这些一层层函数由外而内代入,写成最细粒度的代码(对于程序员来说,可读性相差了好几个“数量级”!这也解释了为什么越细粒度的代码越难理解,为什么软件界要求提高代码复用程度,高内聚低耦合。因为这样的代码简洁、规范、易懂)。(因此,我们经常反其道而行之,即用函数和类、对象来增加代码的复用程度,这也解释了为什么复杂的化学反应例如燃烧用以物理粒子为单位太复杂而很难解释,当前用大型计算机也无法模拟)。明白这一点后,我发现,无论是在理解事物还是在着手一件工作的时候,都应该注意事物的这种构成性质,从而很好地把握事物的颗粒度。太细,一是陷入了数据的海洋而找不到正确的方向,二是太细颗粒本身不含有更多有用的信息。太粗,则无法深入了解该事物的运行原理和构造方式,如果不能很好理解就不能很好地利用。因此,我们在研究事物(对象)的时候一定要把握一个层次粒度,正如编程时候的合理封装好的接口,在这个层面上,细节既不会过于复杂,对很多具体的复杂动作进行了封装,又不会过于笼统,能让我们了解该事物深层次的规律,有什么属性和功能,能在什么时候被调用和被触发都能够一目了然。这样,我们就能很好地应对任何工作并快速上手。

另外我想到的是:我们读书时,先查书目,再查索引,最后查自己感兴趣的章节。我们工作时,从最细粒度干起,基于该粒度做一个“索引”,再在索引上按工作流程分类,进行一个类似于函数封装的过程。我们了解和接手工作的时候,就像查书一样,只要对方交接时将工作整理好了,我们不必理会大量细致而繁复的工作,我们只需要找到每“块”(封装的块)工作的“接口”,这“块”工作的作用和目的是什么。通过交接的文档,我们以“块”为单位进行查阅,从而对整个工作有一个全面的了解。以查书为例,一般这个“块”的就是每本书的“目录”。通过目录你能知道这本书大致在说明什么,然后通过书目列表你就明白了得到的这些书的涉及到的大致领域。程序代码也是这样:有了最细粒度的代码,然后有以函数为单位的数据流图(标注清楚每个函数的功能和接口),然后有以模块为单位的功能图,最后才是软件用户说明文档。这样,有了中间两个图,我们在接触软件的时候就对一堆堆代码在干什么一目了然。从这里我想到了人类基因图谱,我们的DNA就是最基本的二进制代码,我们必须将它反编译为高级程序语言,然后将后面的三个文档补齐(数据流图、以模块为单位的功能图、软件用户说明文档——粒度由细到粗),这样,我们才能声称破译了人类的DNA。否则,永远从最细粒度去看DNA,就如同永远从二进制数据层级去看一个超级大型网站的代码一样,毫无疑问,我们很容易陷入数据的海洋,哪怕你是一位很有经验的工程师,你也仅能破译出你熟悉的部分,而大部分的数据你是无法看明白的,因此,就像目前的基因工程师们干的这样:只能宣称剩下的大部分代码是冗余的、无意义的。

从我们的身体由DNA构造组成,我由此想到一个推论,我们是不可能有来世今生的。因为用计算机的语言来说,我们的DNA相当于计算机中的“类”。我们是根据“类”造出的一个个实实在在的“对象”。而我们的大脑就是这个对象的“运行环境”,当给出一个个发生的“参数”,也就是初始条件的时候,我们的“意识”就开始在“大脑”的这个世界运行了。我们的意识(计算机的对象)在大脑中运行(程序在具体环境中被调用、触发)会产生一系列的结果(思维活动)。正如对象被调用后产生的返回值,我们将其存储在变量中,这个变量对于大脑来说是“记忆”。一旦程序运行结束(大脑死亡),变量的值总是会被清空掉的(意识消失,记忆没有了)。我们唯一能够做的就是根据我们的经历继续完善我们的类(DNA)使之更加适应当前的环境,让下一代更适合在这个世界生存。这相当于程序不断地增加和修改类,类继承原来的属性并增加新的属性。

文章评论

计算机的经历和灵感,从电脑编程灵感中得到的启发相关推荐

  1. 爱用计算机的我作文,我爱电脑编程作文

    在生活.工作和学习中,大家都不可避免地要接触到作文吧,作文是通过文字来表达一个主题意义的记叙方法.那么你知道一篇好的作文该怎么写吗?以下是小编帮大家整理的我爱电脑编程作文,仅供参考,大家一起来看看吧. ...

  2. 小学教育如何利用计算机思维,浅谈如何在中小学编程教学中培养学生的计算思维...

    浅谈如何在中小学编程教学中培养学生的计算思维 伍成伟 四川省 泸县二中城西学校 四川 泸州 646100 摘要:思维是人类所具有的高级认识活动,思维是人对外界输入信息与脑内储存知识经验进行一系列复杂的 ...

  3. wps的计算机在哪里设置密码,怎么在电脑版WPS中修改密码?

    怎么在电脑版WPS中修改密码? 腾讯视频/爱奇艺/优酷/外卖 充值4折起 wps几乎是每个办公人员必备的软件,为了保护自己的隐私,都会给自己的wps设置密码,那么该如何修改密码呢?接下来小编就给大家介 ...

  4. 计算机开机怎样进入cmos,在电脑启动过程中进入CMOS

    在WinXP系统下开机士出现提示ntldr is missing怎么办?最近有WinXP系统用户反映,电脑开机提示"ntldr is missing",导致电脑无法正常开机.什么是 ...

  5. 不用计算机质数的判断,怎么样用电脑编程来判断一个数是否是质数?

    n 为要验证的数 For i = 2 To Int(Sqr(n)) '从2开始,到根号n(取整数)循环 I f n Mod i = 0 Then Exit For '如果i除n的余数为0,则退出循环 ...

  6. 学计算机编程难吗,电脑编程难学吗 如何才能学好电脑编程

    电脑编程难学吗,相信这是很多即将进入编程行业人员最常问的问题,而且在此之前很多人都有听说过电脑编程很难学,那么事实是不是真的这样的呢,其实在编程这个行业中很多人已经取得非常好的成就,对于一些不懂电脑编 ...

  7. 机器人编程是用计算机编吗,茌平计算机编程,无论是选择机器人编程还是电脑编程。...

    茌平计算机编程,无论是选择机器人编程还是电脑编程,孩子学习机器人课程能很好的训练他们发现问题解决问题的能力,这个时候就需要学习单独的编程课来辅助机器人,能够阅读简单指示就可以开始学习编程,适合学习编程 ...

  8. 计算机编程的主要内容,什么是电脑编程电脑编程的概述

    编辑程序让电脑执行的过程就叫编程,那么你对电脑编程了解多少呢?以下是由学习啦小编整理关于什么是电脑编程的内容,希望大家喜欢! 电脑编程的概述 很多软件都可以编程 具有代表性的计算机语言有Java,BA ...

  9. 如何使用计算机制作数学公式,利用电脑编程后的数学公式,太美无法直视!

    我们可以通过scratch . logo(小海龟)画出很多几何图形,再看看下面的,我们是不是也可以挑战一下呢. 利用电脑中编程后的数学公式,数学系的艺术家Hamid Naderi Yeganeh可以创 ...

  10. 太原计算机编程开发暑期培训班,太原电脑编程少儿培训

    学习少儿编程好处 小孩学习编程,一是为了提升孩子的逻辑思维能力和分析解决问题的能力,让孩子遇到问题冷静面对,分步骤.统筹规划的寻求解决方案. 二是培养孩子的学习兴趣,让致力于IT产业的孩子提前几年编程 ...

最新文章

  1. 离散数学及其应用 (Kenneth H·Rosen 著)
  2. mysql insert 锁
  3. cannot be found on object of type xx.CacheExpressionRootObject
  4. java chain_java 8中 predicate chain的使用
  5. Golang tcp转发 remoteAddr错误
  6. PHP程序中时间戳,php 时间戳常用代码
  7. mysql 最大值 关联_mysql-关于最大值的内部联接表
  8. java socket 编程 客户机服务器_Java Socket编程服务器响应客户端实例代码
  9. gerber文件_90%的工程师容易忽视(一):PCB输出gerber文件,这样操作才正确
  10. 在 React Native 中使用 Hooks
  11. RT1021使用RTS引脚控制RS485芯片收发使能
  12. 六安一中2021高考成绩查询,六安一中
  13. sklearn:OneHotEncoder的简单用法
  14. iOS——weak实现原理
  15. 16个博士回河南乡村创业,已有上市计划
  16. 添加友情链接获取CF币
  17. gpu浮点计算能力floaps_为何CPU浮点计算能力差,什么是浮点计算,GPU为何擅长浮点计算?...
  18. RoboCup Rescue Simulator Tutorial core
  19. win7 不显示图片缩略图(解决方法)
  20. OCR文档识别的工作原理

热门文章

  1. 【滴滴拉屎】一款能按照坑型找厕所的神器!
  2. 泰勒级数(Taylor Series)和利用python计算自然常数
  3. Android 图片压缩的几种方法
  4. 日记app(1.0)进展报告
  5. Ubuntu20.04安装Mysql(亲测有效,一定要按步骤来)
  6. 27岁了,目前从事软件测试,听说测试前途是IT里最差的,是这样吗?
  7. ctfshow菜狗杯wp
  8. 【LUTs调色】50个好莱坞电影级别调色预设模板 mLUT Film 3
  9. iOS软键盘弹出后视图向上移动
  10. 演示笔记本重装系统win7教程,笔记本电脑安装win7系统