《大道至简》

——读后感

在即将学习软件工程这一专业之前,势必要先对其进行了解。而大道至简这本书则是从思想上介绍软件工程的一本书,是第一本讨论软件工程思想本源的书籍,也是第一本从工程实践出发溯源而论的佳作。

此书是在“思想方法学”这一软件工程尚未涉足过的领域中的实习之作。作者以非工程的方式重新解析软件工程现象,全面、细致而深刻地分析了工程中各个环节的由来、价值及其内在关系。综合论述开发、工程二者的现状。

我目前在面对编程时总会有种恐惧感,这是因为我们觉得自己不会编程,拿到一个编程的作业,无从下手,这也许是因为我们学习基础语言的时候没有掌握的很牢固。而周爱民老师在书中就给我们这些对编程感到迷惘的人作出了指导。在书中,周老师认为大部分人都是可以学会编程的,只要我们愿意付出,我相信一定会得到回报的。

在最开始在学习编程的时候,看到最多的话就是“程序=算法+结构”。在大道至简这本书的第一章中,周爱民先生引用了著名的典故“愚公移山”,给我们做了关于编程的精义的介绍。编程的根本就是“顺序,分支和循环”,像愚公移山这样庞大的项目都可以用这样简单的编程来实现。编程其实就是一种行为,我们要将一件事交付给计算机去做,首先就要告诉计算机怎么做,什么时候该干什么,什么时候不该干什么,把事情之间的关系分清楚,然后通过输入代码来告诉计算机,它再通过我们所给的代码去实现我们的要求。

作者提到为那些争论语言孰优孰劣的开发人员感到可悲。对于任何一种语言来说,他们都有很多的相同与不同。其实这些个不同只是在适用范围的不同。每种语言都有自己的强项以及局限性,新的语言可能在某些方面有无可比拟的优势,但是它们未必适用使用目前现行的系统,也不能解决所有问题。所以我们需要思考每种语言的试用范围,去思考语言的真正意义。

软件工程的产业中还是工程,一个公司,一个企业看重的也是工程。从程序=算法+结构到方法,再到过程、工程,最后到管理计划加之细节的处理和实施。正如作者在第一章的最后一节中提到的,当今世界上有很多大师:算法大师,游戏大师,语言大师等等,但是通过这些大师的通力合作,我们才能看到一个个能够运行的工程。编程也一样,这些的使命就是实现目的,实现公司的利益。我们需要的就是要掌握一定的方法、方案,利用工具和根据自己的思想去编程,去做一个工程。

通过对本书的阅读,我了解到语言、方法和过程是软件工程的三要素。软件工程是实践中摸索出来的方法论。软件工程是灵活的,需要我们用心去感受,回归本质思考问题。量变终会达到质变,我们的梦也一定会实现。