《大道至简》第二章——是懒人造就了方法 (读后感)
何为“大道至简”?在周爱民的《大道至简》一书中给出的大道至简的解析是软件工程实践者的思想,它是一种思想,而不是一些招数或者方法。
前几天我把这本书的第一章用伪代码的形式写了一篇读后感,今天我就写写这第二章的读后感吧。第二章的标题是:是懒人造就了方法。为什么是懒人造就了方法呢?作者用战国时期的李冰凿山的例子来说明这个道理。
史记中说是“蜀守冰凿离堆”,是说李冰在成都的时候凿出了离堆。一说是李冰将都江堰附近的玉垒山凿了一个大口子,叫宝瓶口,而凿的石头就堆成了离堆。另一说,则是李的确是凿了一座“(溷)崖”,但是是在沫水,亦即是今天的大渡河。 在哪里凿的山,是史学家都说不清楚的事。但的确凿了一座山,而方法是就“(因)其崖崭峻不可破,(冰)乃积 薪烧之”。
我们已经看到事物的进化了。同是战国时代,《列 子·汤问篇》里的愚公就要“碎石击壤”,而李冰就已经懂得“积薪烧之”了。在都江堰这么大个工程里,如果有一个人会闲到看火烧石头,那他一定很懒。那么多事堆着不去做,去看烧石头,你说他不是懒是什么。所以说是懒人造就了方法。
早期写程序,都是将代码打在穿孔纸带上,让计算机去读的。要让计算机读的纸带当然是连续的,这无需多讲。而打出的纸带是多么苦楚。后来有了汇编语言,可以写一些代码了。这时的代码是写在文本文件里,然后交给一个编译器去编译,再由一个链接器去链接,这样就出来了程序,再后来有了高级语言,程序越来越大,大家把写程序的时候,习惯性的把所有的代码写到一个文件里。而对于要把“一百万行代码写到一个文件”,查找一个函数要在编辑器里按五千次 PageDown/PageUp 键的勤快人来说,是不能指望他们创造出“单元文件(Unit)”这样的开发方法来的。所以是懒人开发了单元文件,也就很快出现了一个新的概念:模块。 把一个大模块分成小模块,再把小模块分成更细的小小模块,一个模块对应于一个单元。于是我们可以开始分工作了,一部分人写这几个单元的代码,另一部分则写那几个。所以说是懒人造就了方法。
其实结构化编程的基本单位是“过程(Procedure)”, 而不是上面提到的“单元(Unit)”。然而在我看来,过程及其调用是 CPU 指令集所提供的执行逻辑,而不是普通的开发人员在编程实践中所总结和创生的“方法”。正如 CISC 指令集搅乱了一代程序设计师的思路一样,大量的知识和资讯搅乱了我们思想。我们应该尝试一下分类,把既有的知识象桌子上的书一样整理一下。
所谓“面向过程开发”,其实是对“结构化程序设计” 在代码阶段的一个习惯性的说法。而我忽略了这个阶段的 “方法”的根本原因,是即使没有任何“方法”的存在,只需要有了“单元(Unit)”和“模块(Module)”的概念, 在面向过程时代,一样可以做出任意大型的程序。在那个时代,“方法”问题并不会象鼻子一样凸显在每一个程序 员的面前。
面向过程开发中,“过程(procedure)”是 CPU 提供的,“单元(unit)”则是编译器提供的(机制)。程序员不需要(至 少是不必须)再造就什么“方法”,就可以进行愚公式的开 发工作了。 如果不出现面向对象的话,这样伟大的工程可能还要再干一百年⋯⋯
而与“面向对象”是否出现完全无关的一个东西,却 因为“过程”和“单元”的出现而出现了。这就是“工程 (engineering)。
转载于:https://www.cnblogs.com/dmego/p/5906254.html
《大道至简》第二章——是懒人造就了方法 (读后感)相关推荐
- 读《大道至简-- 第二章 是懒人造就了方法》 有感
社会的进步.科学的发展,无不是靠这些"懒人". 懒人造就了方法,这句话一点也没错.突然间想想那些聪明的人,大多都是懒人.因为想得多,所以做得少.因为想得多,所以思维得到了锻炼,变得 ...
- 大道至简(读后感)第二章 是懒人造就了方法
<华阳国志>中写道 " 僰道有蜀王兵蘭 ,亦有神作大滩江中.其崖崭峻不可破,(冰)乃积薪烧之." 史记中记载战国时李冰凿了一座山搞成一条河.他的伟绩也是够大的! < ...
- 《大 道 至 简 ——软件工程实践者的思想 》是懒人造就了方法读后感
大道至简:软件工程实践者的思想 --是懒人造就了方法读后感 俗话说懒人造就了方法,在很久以前的战国的有这么一个故事 "蜀守冰凿离堆",据说是说李冰(约公元前302年~235年,生卒 ...
- 读《大道至简—是懒人造就了方法 》有感
读了大道至简第一章编程的精义之后,我觉得感触颇深,于是乎我又读了第二章是懒人造就了方法 ,之后果然没有让我失望,第二章写的也是非常的好,非常的吸引我. 第二章的开头便引用了李冰凿山的故事,在战国时代, ...
- 《大道至简》第二章读后感--是懒人造就了方法
何为"大道至简"?在周爱民的<大道至简>一书中给出的大道至简的解析是软件工程实践者的思想,它是一种思想,而不是一些招数或者方法. "僰蘭道有蜀王兵,亦有神作大 ...
- 《大道至简 第二章》读后感
是懒人造就了方法 --------读<大道至简>第二章有感 为什么<列子·汤问篇>里的愚公移山就要"碎石击壤",而李冰凿山就已经懂得"积薪烧之&q ...
- 大道至简 第二章 读后随笔
第二章的题目为"是懒人造就了方法",我就纳闷了懒人这么懒怎么会创造东西呢?而作者引用的李冰放火烧山以开凿的历史故事,让我顿时茅塞顿开.我继而联想到从古代的脚力.马车到如今的汽车.飞 ...
- 《大道至简第二章读后感》
在阅读了大道至简的第一章后,我又紧接着阅读了第二章.第二章的名字很有趣,叫做"是懒人创造了方法".和第一章一样,第二章开始便引用了一篇古文.是<华阳国志>里的一部分,讲 ...
- 读大道至简第二章感悟
愚公很勤快,他每天都很努力的"叩石垦壤",不停的"箕畚运于渤海尾".年复一年,日复一日,无止无休.只是为"毕力平险,指通豫南,达于阴".但是 ...
最新文章
- 面向对象的软件测试技术
- 网络无线AP信号走场测试软件(Ekahau 使用说明)
- 谷歌移动应用强调设计元素:向极简风格转型
- 西门子S7comm-plus通信过程及重放攻击分析
- 你以为工厂模式很简单,可能是因为你懂的只是冰山的一角
- Spring+Hibernate 零散知识点
- Voltage Keepsake CodeForces - 801C(二分)
- 大一c语言图书管理系统查询,大一C语言课程设计图书信息管理系统
- 工作 3 年和读研 3 年哪个更值?
- 三国志战略版:先锋斥候广州行
- 计算机网络故障提出问题,列控系统及其计算机网络的故障诊断与故障容错研究...
- 微电子电路——PMOS网表详解
- 天梯赛题目练习——高速公路超速处罚(附带测试点)
- 心疼果粉,10V、4A,荣耀Magic2超级快充充电头正式曝光厉害了
- app推广运营大神干货9问答::iOS渠道不知道去哪里挖掘等
- reactjs中使用高德地图计算两个经纬度之间的距离
- CV7 颜色追踪和图像阈值
- Talk预告 | 阿里巴巴达摩院算法工程师许贤哲:DAMO-YOLO:兼顾速度与精度的高效目标检测框架
- 用户研究:深度解析用户画像
- Photoshop调出清晰的阴雨天气山水风景照
热门文章
- 收费系统服务器物理隔离,莆田【停车场收费系统】_福建迪亚电子
- GCC编译器中的-I -L -l 选项。
- php 如何启动ica文件,什么是ICA文件?Win10专业版如何打开ICA文件?
- 辛东方:papi酱凭什么能够走红 背后的炒作令人发抖
- spark启动历史服务配置时报错java.net.ConnectException: Connection refused; For more details see: http://wiki.ap
- java 延时发送邮件_基于SpringBoot实现定时发送邮件过程解析
- 智能运维落地与实践 | 微众银行
- 弈剑听雨阁战场克敌生存最新1.0版
- 使用01字典树解决最大异或问题
- ubuntu安装迅雷