大道至简读后感

    读了由周爱民老师写的大道至简,使我更加深刻的认识了软件工程,同时我也有一些自己的感受。

    大道至简的第一章是编程的精义,它用《愚公移山》中:“虽我之死,有子存焉;子又生孙;子又有子,子又有孙。子子孙孙,无穷匮也。而山不加增何苦而不平?”。在愚公的身上,浓缩了项目组织者、团队经理、编程人员、技术分析师等众多角色的优秀素质。“惩山北之塞,出入之迂”使我们了解到项目的基本沟通方式,“毕力平险,指通豫南,达于汉阴”并通过研讨,则定了一个井然有序的、可实现的技术方案:“扣石垦壤,箕畚运于渤海之尾”。“虽我之死,有子存焉”体现了IF条件判断,“子又生孙,孙又生子;……子子孙孙,无穷匮也”,描述了一个循环结构。因“山不加增”判断它不是一个死循环。所以在愚公的论述中,我看到了编程的根本:顺序、分支和循环。这就是编程的精义。 同时,它还使我了解到程序=算法+结构,编程的第一要务是先把事情分析清楚,事件先后的逻辑关系和依赖关系搞清楚,然后再去代码实现,而并非上来就写。这点对我也是非常有用的,在以往的编程中,编写程序我总是不知道该从哪下手。而大道至简则教我认识到思想的重要性。第2章 写的是:是懒人造就了方法。战国时期的李冰比较“懒”:愚公选择了带领他的团队日复一日的凿石开山,而他则选择了烧山。这得益于他细致的观察和思考。因为人的精力终归是有限的。提出新的方法解决问题将影响做事的成效。一百万行代码是可以写在一个文件里的,因为“懒”出现了单元文件,而有了单元文件就有了:模块。把一个大模块分成小模块,再把小模块分成更细的小小模块,一个模块对应一个单元,就可以把模块分开做了。从下面的一节中我认识到把知识分类整理的重要性。大道至简还提到项目可以由一个团队来完成,这就要求团队由一个优秀的领导者。软件工程的概念被踢出的时候大概是上世纪60年代末。它作为成熟的概念的标志是软件工程的瀑布模型的提出。瀑布模型将软件开发的过程分成需求、分析、设计、开发和测试等5个主要阶段。软件工程要把“实现”作为根本目的,工程只是一种实现的途径。《韩非子.外储说左上》记载了“买椟还珠”的故事:“楚人有卖其珠于郑者,为木兰之柜,熏以桂椒,缀以珠玉,饰以玫瑰,辑以羽翠。郑人买其椟而还其珠。”郑人只看到了事物的表面,却忽略了最本质的东西,实在是可惜。所以我们应该学会去看一件事物的本质,而不是只看他的表面。同样让我感觉到很好的地方就是:工程不是做的,是组织的。我们总是在说做工程,可实际上工程不是套模板,而是要组织,项目经理的工作就是要去组织这个工程中的各个角色,使得分工明确,步调一致,共同的完成这个项目。

     总之,大道至简是一本很好的书,它用一个简单的事件告诉你编程的精义,强调思想的重要性,以及团队合作的问题等等。对编程很有帮助,也建议大家去看。

 

转载于:https://www.cnblogs.com/mxk123456/p/mxk123123.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值