大道至简---阅读笔记(一)

1.“虽我之死,有子存焉;子又生孙,孙又生子;子又 有子,子又有孙。子子孙孙,无穷匮也。而山不加增,何 苦而不平?”

在愚公的论述中,我们看到了编程的根本:顺序、 分支和循环。庞大若“愚公移山”这样的工程,都是 可以通过这样简单的编程来实现的。

这,就是编程的 精义了。

2.编程的第一要务是先把事情分析清楚,事件先后 的逻辑关系和依赖关系搞清楚,然后再去代码实现。积极工作和勤于思考都要占时间。

程序 = 算法 + 结构;思想对于程序来说很重要

3.史记中说是“蜀守冰凿离堆”,是说李冰在成都的时 候凿出了离堆。一说是李冰将都江堰附近的玉垒山凿了一 个大口子,叫宝瓶口,而凿的石头就堆成了离堆。

另一说, 则是李的确是凿了一座“(溷)崖”,但是是在沫水,亦即 是今天的大渡河。在哪里凿的山,是史学家都说不清楚的事。但的确凿 了一座山,

而且方法是“(因)其崖崭峻不可破,(冰)乃积 薪烧之”。

是懒人造就了方法,一个方法能把一个复杂的问题简单化。所以方法很重要

时间: 2024-10-08 17:06:01

大道至简---阅读笔记(一)的相关文章

大道至简阅读笔记03

这几天我读了这本书的最后几章,使我对软件开发的过程也是有了更深的了解,从第六章的题目中可以看出,不管对于任何工程项目的开发来说,一门开发语言只是一个工具,每个语言都有自身的特点,我们要根据不同的使用环境及使用要求来选择最合适的编程语言,但是在没有特定要求的题目或任务中,我们要选择自己最擅长的语言来编写代码 在项目的开发中,要灵活应变,理想的状况下,“软件工程=过程+方法+工具”.然而工程成功的真正关键,并不在于你把你的团队“组织”的有多好.即使在团队中他们都显得有条不紊,你一样会面临失败. 第八

大道至简阅读笔记04

本周我阅读了<大道至简>的第4张——流于形式的沟通,读后反思与感慨也是颇多的,下面与大家分享一下. 为不存在的角色留下沟通的渠道,这一节对自己来说体会是最多的.之前我们或其他自己所知道的团队中都存在这样一个问题:维护旧项目比做新项目更难:或是很多时候当项目负责人员离开后,项目就中断和中止. 许多人应该深有同感.     本书中对此情况进行了说明,把这一切的原因归咎于“没有history”.历史记录(History)与注释(Comment)不是一回事.代码中的注释是为阅读代码而留备的,而Hist

大道至简阅读笔记一

近期开始了<大道至简——软件工程实践者的思想>这本书的阅读.又是一本关于软件工程思想的书,没有堆砌的代码,简约而真实. 这本书的序我也看了,看完我更加了解这本书.周爱民老师是专注而真诚的人,他不追求出版的经济效益,只希望表述自己的思想,希望可以对无数软件工程从业人员有帮助.他做到了他书的题目那样写书,大道至简.其著书立意一点便值得我们学习,我们应当在当今浮躁的社会有颗对于知识的简单的心. 编程的精义以愚公移山引出,通过著名的我国古时的故事阐明了编程的精义很简单,愚公移山中即已有编程的思想.许多

大道至简阅读笔记01

今天我读了<大道至简>的第一章,虽然第一章题目叫做编程的精义,但它并没有一开始就从编程的角度进行讲解,而是先举了两个例子,分别是愚公和李冰两人通过自己的方法开山的过程,其中愚公代表着一类程序员,这类程序员,只会埋头苦写代码,花大量的时间巧写代码,日复一日,月复一月,这类程序员虽然很踏实,很勤快,但是发展空间较小,最终有可能会被淘汰.相反,李冰这一类程序员,他们善于思考,不是一上来就是敲代码,而是先对问题进行分析,找出问题的切入点,将问题简单化,这样才能快速的将代码的功能实现,最重要的是,节省了

大道至简阅读笔记三

<大道至简>至此全部读完,这里谈一下对最后几章的感受. 作者在最后几章里向我们介绍了现实中的软件工程,对与思考与思想方面进行了讨论.我们要了解从编程到工程的转变,在学习阶段我们是从一个个程序编起,但到做起项目来则是一个工程,并非简单的程序本身.除了有单纯的编程技术外,我们也要有执行工程的能力. 对与软件工程的开发,我们要有一定的思考能力.讲技术的书很多,将工程开发的文章也很多,我们可以了解很多知识,但关键在于我们要思考,要懂得好的东西背后的思想.在开发过程中,我们要理解角色不同,思考的层面也不

大道至简阅读笔记3

大道至简第6章“从编程到工程”中说到“语言只是工具”,对这句话我感觉既是对语言的膜拜也是漠视.不同的角度应该有不同的理解,作为一个初学者,没有什么开发经验的学习者,我们所应该做的不是研究太多深层次的东西,应该抓住基础的东西,多多练习,把语言学习当做一个重点来学习.当有了足够的编程经验,我们应该转移我们的重点,渐渐地总结那些方法和模式,把编程的过程当做一个工程对待,这应该才是一个初学者到管理者的成长过程吧!

大道至简阅读笔记2

团队缺乏的不只是管理章节中提到:“动摇制度的人不是犯错的员工,而是管理者自己.”一个团队出现了问题,责任往往被推倒员工身上.很多时候就是管理者自己不能做到严于律己,从而引起不平声.怨愤声.管理者应该有一个最低的觉悟,事情总要做到前面,也许你不能面面俱到,但是你不能从心里去逃避这个问题.管理者能够拿到高额薪水,不是你做了多少工作,而是你让这个团队积极地工作着...

大道至简阅读笔记02

作为团队管理,起码要懂得承担责任,这是最基本的素质.不能因项目为完成而把责任推给自己的下属. 项目成功的两个方面包括项目完成质量和项目完成时间.但是项目的预期工期无论怎样都是无法保证是绝对合适的,所以项目似乎总是不能成功.因此,项目经理在项目开始前面对的就是失败.所以项目经理需要时间成熟.这也就是说任何一个人不可能一上来就是项目经理,这需要时间来积累经验. 组织模式确定的同时,就应该建立好相应的制度,而不能说最后再来填补制度.制度可以约束员工,可以规范员工的行为.制度应该人性化,不能在员工不知情

大道至简阅读笔记之三(7-8章)

第七章讲的是现实中的软件工程,以IBM为例 讲了ibm为何购并rational,为何在语言方面选择支持java,以及出于同样的理由选择亲近开源软件界.同样borland也从开发工具场上的位置跳出来,在语言上寻求中立,作为工具开发商,borlan拥有了实现alm所需的绝大多数软件产品,并且开始并购与实现alm体系相关的公司迅速不全了alm作为一个工程体系在理论方面的不足.而微软在工具方法和过程方面并非都停留在理论阶段而是都有具体的实现 “项目管理要不要考虑成本问题”作者以一个小例子提出评价完成一个

大道至简阅读笔记之二

作者提到为那些争论语言孰优孰劣的开发人员感到可悲.然而,能够得出这样一个结论之前的人,恰恰之前正在经历这样一个阶段.作为JAVA开发人员来讲,使用何种开发语言的确已经显得不那么重要了,因为任何语言都是可以学习的,他们只是工具,或者说是知识,真正转化为生产力的, 还是需要用语言来实现系统.完成系统需求,让客户满意.不善思考的程序员或许需要很长时间绕出这个圈子,然而最近两三年的软件行业的变化(Ruby,Groovy,Scala,JRuby,Python…),不得不让每个业内的开发人员思考这样一个问题