其实最开始我在建民大大的“热心指导”中看到还需要读一本《大道至简》时,我的内心是崩溃的,因为本来已经有一本《构建之法》和JAVA自学用书了,而且还要自学JAVA基础,现在再加上一本书感觉真的吃不消。不过转念一想既然老师让看那肯定有他的道理,而且在看到只是短短的电子版的时候,我似乎又看到了光明。直到我把它读完,我才懂得老师想让我们懂得的道理。
在读这本书之前,我心目中的软件工程无非就是由枯燥无味的代码组成,会写代码,就代表懂得了软件工程。而在读完之后才发现自己大错特错。这本书主要是讲述周爱民先生作为一名软件工程实践者的思想,他将自己的思考,心得与感悟分享给每一个读者,以一位前辈的身份为每一个初学者指点迷津。同时我也为在正式学习软件工程之前有幸读到这本书倍感荣幸。
全书共八个章节,虽然每一节内容不尽相同,但都是作者这么多年的悟到的精髓。在本书的开篇,作者以我们熟知的愚公移山的典故引出的编程的精义。顺序,分支以及循环乃是编程的根本。潜意识里,愚公移山乃是天方夜谭,而在软件工程的世界里,这些却可以用代码来实现。旨在告诉我们软件工程的过人之处,只要善于利用,他能帮你做到你认为不可能的事。第二章的主题则是“是懒人造就了方法”,的确,种种工具机器的产生来源于人们想偷懒,想利用方法来使自己省力。而软件工程仅仅几行代码就可以将枯燥无味的步骤重复上万甚至无数遍。“三人成众”的团队理念也在书中提到,孤胆英雄往往只有在小说里出现,而真正的成功却离不开团队。一个团队至少需要主从、监督和责任三个基本特性,缺一不可,否则也不能称之为团队,作为团队的一员,就要做好自己的本职工作,而管理者,则要掌控团队的走向,不能偏离目标。同时,沟通在软件工程中也极为重要,客户与程序员的交流,以及项目后期的维护,沟通必不可缺。当作者谈到“失败”,提出“失败的过程也是过程”的观点。告诉我们要看透过程的本质,即使一个失败的过程,也有他的可取之处,无论怎样,他总是真实存在的。至于软件工程中的语言,本身没有好坏之分,用作者的话说,整天讨论这门语言好,那门语言坏的人是可悲的,因为他们并没有真正理解语言的作用,对于软件开发人员来说,语言仅仅是完成项目的工具,而且语言之间是相通的,谈论语言的好坏只是在浪费时间而已,实现或者说完成项目才是我们最终的目的。然而谈论再多的理论也不如实践现实中的软件工程。我们并不是为了编程而编程,终究还是为了实践,这才是软件工程的真谛。
未能实际的研究软件工程,或许我对周爱民先生的理念理解的不到位甚至失当,但是它依旧为我在软件工程一片空白的领域增加了一些路标,相信有了周先生的指导,新学期的软件工程我一定能化艰难为垫脚石,努力研究软件工程。