学习任何东西都得先了解思想,没有思想,就不能真正的学会。周爱民先生写的《大道至简》就是一本介绍编程思想的书。读完这本书,感觉自己相对以前对编程更了解了一些,对编程也更加喜欢。
在第一章,作者通过愚公对自己移山的经验以及方法介绍编程的根本是顺序、分支和循环,周爱民在书中写到除了先天智力问题或者后天懒惰不思进取的人,都能学会编程,程序=算法+结构。这些在信心上绝对的帮助我们一些对编程有心理困难的同学,相信自己就能做好。
作者在第二章中用愚公移山“碎尸击壤”与李冰凿山“积薪烧之”来提出懒人造就了方法,人的精力终归是有限的,提出新的“方法”,解决的将是影响做事成效的根本问题。我认为,懒人是聪明人,固然做事需要勤奋,但也要讲究方法,勤奋的人会觉得世上无难事,只怕有心人,而聪明的人则会想方设法,追求效率,突破人精力的极限。第二章的最后一部分讲述了面向对象与面向过程的区别。面向过程是对流程、结构和编程方法的高度概括,面向对象本身只解决结构和编程方法的问题,而并没有对流程加以改造。
作为一个软件工程师,想要做出一个完整的程序,肯定要有一个团队,自己一个人是很难完成并且不会很好完成一个程序的编写。周爱民先生在书中提到,团队的重要,而团队的合理性更加重要,三人以上的团队需要一个 能承担责任的管理者,而管理制度要依附在有一个确定的组织机构上。
团队力量很强大,我们可能都会觉得只要有一个团队,我们就能出色完成一个工程,然而并不是所有的团队都能有那么大的作用,一个团队是一定要有一个很好的管理者监督者的。不仅仅监督工作,更加可以在工作中提出自己一定的观点及意见。并可以对团队中的成员进行明确的分工,建立一个合适的管理制度,才能避免“即不能令,又不受命”的情况的发生。
有了团队,有了管理者,对于客户要求的理解,就需要互相的沟通与理解,而这在第四章中被提到,与客户的沟通不能是流于形式,要进行有效沟通,建立在具有明确的意识及观念的基础上,并且珍惜每一次与客户的交流,向客户了解更深层的需求,保障沟通的有效性。
我们在实现客户需求的时候,会有失败,但是失败的过程也是过程,谁敢说自己是一次就成功,通过失败我们可以积累经验,应该注重过程而不是一味强求结果,对于每个程序员来说,只求每个过程的成功而不注重整个工程,只能沉迷在项目中,不会有成功。
周爱民先生在第六章中主要介绍了从编程到工程的五个过程,软件工程可以分为四个层次,工具,方法,过程,实现对象。长期的编程实践,必然会成为某种方法。第七章说的是现实中的软件工程,大公司已经开始促进软件工程从原始状态推到激发发展的状态了,在此时,保障团队的稳定和谐就是非常重要的因素。最后一章是“是思考还是思想”,软件工程的三要素是工具,方法与过程,这三个要素既单独是一个个体,又互相联系。就如同一个团队,在对某个项目开发过程中,既独立思考,又相互协调,加上对细节的处理,就是一个很完美的工程。
对于软工编程小白的我,读完这本书,确实受益匪浅。它是一个充满变化性的东西,这只是一个开始,希望在以后的学习中,可以一直进步,一直求索!