初读《大道至简》,很简单,从愚公移山开始到后面现实中的软件工程,深入浅出。整本书读下来,思维凝聚又发散开来,感觉重新认识了一次软件工程。 书不是关于技术的教学书籍,而是关于作者在软件领域工作多年的心得,内容趋于散文。从目录便可以看出作者的写作思路,编程的精义,方法,管理,沟通,过程,工程,最后是对软件工程的现实认识以及思考,不同的篇章结合起来正是作者对项目开发过程中的认识总结和思考。 不同的篇章也给了我对软件工程新的认知,接下来我从5个方面来阐述我的认识。
首先是编程的精义。
作者举了愚公移山的例子,由此给了我们一个结论:程序=算法+结构。这是一个经典的结论,大一学C和C++时候我们接受的也是这个结论。读到这里并没有给我任何启示或者感觉这本书有何不同的地方,真正让我感觉到头脑一震的地方是从第二章开始的——方法。
二,作者接着举了李冰积薪烧石的典故,由此引出了方法。继而得到了新的结论:程序=算法+结构+方法。这个作者第一次对于程序的本质的思考,也引发了我对于程序学习的思考,大一对于基础的C和C++并没有意识到方法的问题,只是对于简单的程序的编译和发生错误时寻找问题,这只是简单的程序,学习面对对象语言时继续这样吗?显然是浪费时间的,要学会思考,注意方法。
三,团队以及管理的重要性。
作者的思维渐渐深入,越过了对程序的探讨,会编程是一个合格程序员的最起码的标准,所以书中没有再继续探讨,而是展现了作者的与众不同之处,对管理和制度的思考,对开发团队的阐述,都给我不一样的感觉,重新认识了项目开发,作者也给出了自己对管理者的思考结果,“跟随蚂蚁,但不要掉进蚂蚁洞里”,可以说很形象的阐释了管理者的标准,让我对于做项目和对管理者有了一定的认识。
四,沟通。
沟通这一章,记忆最深刻的就是“最简沟通”四个字,项目开发过程中,一切力求完美的同时要用最快的速度完成,要求项目完美,和客户沟通是必不可少的环节,如何减少时间,如何达到最好的沟通效果,都是需要思考的事情,“最简沟通”也许是一种不错的方法,用最短的时间达成一种双方满意的效果,因此保障每一次沟通的有效性都是最重要的事,最好在见到客户之前,就应该设计好所有的问题和提问方式,不让沟通流于形式。
五,过程。
过程不是工程,失败的过程也是过程!
我印象很深的一句话,做过程不是做过场,实现才是目的。我们干什么都不能忘记目标,我们编程的目标是实现它,做项目的目标也是实现它,不能注重过程而忘记目标,作者也开始深入软件工程的更深处,提出了数个模型,都是源于瀑布模型,因此不能流连于模型,而要注重项目的目标,这又回到了管理的作用上。
读完了这本书,给我的感觉是,软件工程在我脑海中的印象又发散开来,不再局限于编程那么简单,做程序,做项目的每一步都需要统筹规划,不是简单的算法+结构,里面有更加复杂的东西,希望在深入学习软件工程之后再回来读这本书,可以有更深入,更加不同的认识!
原文地址:http://www.cnblogs.com/cj-125/p/7401763.html