何为“大道至简”?在周爱民的《大道至简》一书中给出的大道至简的解析是软件工程实践者的思想,它是一种思想,而不是一些招数或者方法。

  “僰蘭道有蜀王兵,亦有神作大滩江中。其崖崭峻不可破,(冰)乃积薪烧之。”

  话说,战国时期有一人叫李冰,他干了一件事情与愚公类似,那就是凿了一座大山,然而凿山的过程却与愚公相去甚远。愚公历代子孙去凿穿了山而李冰以火烧石省去了大量的人力物力。那李冰又是为什么会用“烧”这种方法来碎石的呢?如果李冰也象愚公那样日复一日地督促着他的团队凿石开山,那他一定没有时间来学习、寻找或者观察,当然也不会发现“烧”这种方法可以加快工程进度,使得一大座山短时间就被哗啦哗啦地给“碎”掉了。所以说,正是一个懒人造就了“烧石头”这个“碎石”的方法。愚公太勤快了,勤快得今天可以比昨天多凿一倍的石头。或者在愚公的项目计划案的首页里就写着朱笔大字:“吾今胜昨倍许,明胜今倍许,而山不加增,何苦而不快。”但是越发的勤快,愚公将越发没有机会找到更快的方法,人的精力是有限的,我们要尽可能用简单高效的方法去解决问题,才可以突破人力的极限。

  我们已经看到事物的进化了。同是战国时代,《列 子·汤问篇》里的愚公就要“碎石击壤”,而李冰就已经懂得“积薪烧之”了。在都江堰这么大个工程里,如果有一个人会闲到看火烧石头,那他一定很懒。那么多事堆着不去做,去看烧石头,你说他不是懒是什么。所以说是懒人造就了方法。

  早期写程序,都是将代码打在穿孔纸带上,让计算机去读的。要让计算机读的纸带当然是连续的,这无需多讲。而打出的纸带是多么苦楚。后来有了汇编语言,可以写一些代码了。这时的代码是写在文本文件里,然后交给一个编译器去编译,再由一个链接器去链接,这样就出来了程序,再后来有了高级语言,程序越来越大,大家把写程序的时候,习惯性的把所有的代码写到一个文件里。而对于要把“一百万行代码写到一个文件”,查找一个函数要在编辑器里按五千次 PageDown/PageUp 键的勤快人来说,是不能指望他们创造出“单元文件(Unit)”这样的开发方法来的。所以是懒人开发了单元文件,也就很快出现了一个新的概念:模块。 把一个大模块分成小模块,再把小模块分成更细的小小模块,一个模块对应于一个单元。于是我们可以开始分工作了,一部分人写这几个单元的代码,另一部分则写那几个。所以说是懒人造就了方法。

  其实结构化编程的基本单位是“过程(Procedure)”, 而不是上面提到的“单元(Unit)”。然而在我看来,过程及其调用是 CPU 指令集所提供的执行逻辑,而不是普通的开发人员在编程实践中所总结和创生的“方法”。正如 CISC 指令集搅乱了一代程序设计师的思路一样,大量的知识和资讯搅乱了我们思想。我们应该尝试一下分类,把既有的知识象桌子上的书一样整理一下。

  所谓“面向过程开发”,其实是对“结构化程序设计” 在代码阶段的一个习惯性的说法。而我忽略了这个阶段的 “方法”的根本原因,是即使没有任何“方法”的存在,只需要有了“单元(Unit)”和“模块(Module)”的概念, 在面向过程时代,一样可以做出任意大型的程序。在那个时代,“方法”问题并不会象鼻子一样凸显在每一个程序 员的面前。

  面向过程开发中,“过程(procedure)”是 CPU 提供的,“单元(unit)”则是编译器提供的(机制)。程序员不需要(至 少是不必须)再造就什么“方法”,就可以进行愚公式的开 发工作了。 如果不出现面向对象的话,这样伟大的工程可能还要再干一百年??而与“面向对象”是否出现完全无关的一个东西,却 因为“过程”和“单元”的出现而出现了。这就是“工程 (engineering)。

转载于:https://www.cnblogs.com/XiaoPiHaiEr/p/5906585.html

《大道至简》第二章读后感--是懒人造就了方法相关推荐

  1. 《大道至简第二章读后感》

    在阅读了大道至简的第一章后,我又紧接着阅读了第二章.第二章的名字很有趣,叫做"是懒人创造了方法".和第一章一样,第二章开始便引用了一篇古文.是<华阳国志>里的一部分,讲 ...

  2. 《大 道 至 简   ——软件工程实践者的思想 》是懒人造就了方法读后感

    大道至简:软件工程实践者的思想 --是懒人造就了方法读后感 俗话说懒人造就了方法,在很久以前的战国的有这么一个故事 "蜀守冰凿离堆",据说是说李冰(约公元前302年~235年,生卒 ...

  3. 《大道至简》第二章——是懒人造就了方法 (读后感)

    何为"大道至简"?在周爱民的<大道至简>一书中给出的大道至简的解析是软件工程实践者的思想,它是一种思想,而不是一些招数或者方法. 前几天我把这本书的第一章用伪代码的形式 ...

  4. 《大道至简 第二章》读后感

    是懒人造就了方法 --------读<大道至简>第二章有感 为什么<列子·汤问篇>里的愚公移山就要"碎石击壤",而李冰凿山就已经懂得"积薪烧之&q ...

  5. 读《大道至简-- 第二章 是懒人造就了方法》 有感

    社会的进步.科学的发展,无不是靠这些"懒人". 懒人造就了方法,这句话一点也没错.突然间想想那些聪明的人,大多都是懒人.因为想得多,所以做得少.因为想得多,所以思维得到了锻炼,变得 ...

  6. 大道至简 第二章 读后随笔

    第二章的题目为"是懒人造就了方法",我就纳闷了懒人这么懒怎么会创造东西呢?而作者引用的李冰放火烧山以开凿的历史故事,让我顿时茅塞顿开.我继而联想到从古代的脚力.马车到如今的汽车.飞 ...

  7. 读《大道至简—是懒人造就了方法 》有感

    读了大道至简第一章编程的精义之后,我觉得感触颇深,于是乎我又读了第二章是懒人造就了方法 ,之后果然没有让我失望,第二章写的也是非常的好,非常的吸引我. 第二章的开头便引用了李冰凿山的故事,在战国时代, ...

  8. 大道至简第一章 读后感

    大道至简第一章--编程的精义 //愚公移山 public class Yugongyishan { public static void main(String[] args) { do {If(愚公 ...

  9. 大道至简(读后感)第二章 是懒人造就了方法

    <华阳国志>中写道 " 僰道有蜀王兵蘭 ,亦有神作大滩江中.其崖崭峻不可破,(冰)乃积薪烧之." 史记中记载战国时李冰凿了一座山搞成一条河.他的伟绩也是够大的! < ...

最新文章

  1. 参加LinuxCon Japan 2012
  2. 阿里推出 PolarFS 分布式文件系统:将存储与计算分开(附论文)
  3. cop2000计算机组成原理,COP2000计算机组成原理-南昌大学网络教学平台.doc
  4. webpack基础+webpack配置文件常用配置项介绍+webpack-dev-server
  5. Oracle执行SQL语句的过程
  6. 销户c语言,c – 如何在注销时优雅地退出QApplication?
  7. NSString 和 NSMutableString
  8. 为了研究,可以在 Linux 内核中植入漏洞吗?
  9. 买菜201809-2
  10. linux手写软件,Linux 手写输入法
  11. .NET:持续进化的统一开发平台
  12. Delphi第三方组件--Delphi第三方控件大比拼
  13. freyja将重新把重心放在orm、sharding、cache上
  14. javax.mail 发送163邮件
  15. java求导数_java实现队列链表,求一元多项式的导数
  16. 软件质量管理-6-质量管理
  17. vue.js的快速入门使用
  18. Java导出Word(导出图片,类,List)
  19. linux系统命令打不出字,常用的命令 linux
  20. pythonocc 等步长平分周长的分割曲线

热门文章

  1. 画论22 韩拙《山水纯全集》
  2. 随笔-Android openGL-三棱锥纹理
  3. .globl _start
  4. 基于ARM板s3c2440---wifi网卡
  5. Java发送邮件中文乱码问题
  6. 共享内存函数(shmget、shmat、shmdt、shmctl)
  7. python 矩阵输出
  8. 湖南省隆回县2011年下学期高二调研试卷语文
  9. python 函数参数(必选参数、默认参数、可选参数、关键字参数)
  10. 为docker设置国内镜像