《构建之法》——构建软件工程的基本法则(读后感一)

  《构建之法》这本书就像一块敲门的金砖一样,向我讲述软件工程的奥秘。与我原本观念不一样的是,软件工程不是一门浅显的学科,相反,如同大部分学科一样难懂,但也正像大部分学科的学习方式的不一样,通往软件工程深处的路曲折漫长而且交错纵深,我们需要学习的正是前人留下的经验来填充我们自己,这不一定是对的,但一定是好的,这就是我进行这次阅读的原因。

  软件的构成是流程化的程序与专业的软件工程

  就像程序一样,软件的构成也是由各种元素神奇的反应形成,但反应也得经过合理的公式。

  首先,软件工程本质是不支持造轮子的,因为效率太低了。在软件开发过程中,效率优先,也正是因为如此才会有“人月”这一概念诞生,也才会有人月神话。软件的开发常常过分追求效率,不分场合,就算是偏向研究也是如此。玛丽居里可以从一大堆铀废料中提取出钋和镭,但一般而言,这个过程放软件工程就很不合理,虽然这也使软件工程成为一门相对而言较少有新研究成果的学科。如果在一个基础上进行开发操作,软件工程的开发模式无疑是最为迅猛的,因为软件工程本身总结了无数经验以适合各位程序员参考,就好像房屋的框架已经搭建完成但材料还没有,程序员就只是起了一个搬砖的效果而已。这个框架是软件工程中的前人搭建的,我们正是踩在巨人的肩膀上。

  软件工程最大的优势就在于此,迅猛的开发以及种种经验总结,有了这些我们才有能力去开发一个完整的系统,有了一个更高的上限。

  其次,公式化的东西固然有效,但不是最好的,变数这种东西困扰着我们。《构建之法》总结的软件特点有:复杂性、不可见性、易变性、依赖硬件、非连续性,就这总结也有可能谁在时代发展而发生改变。人们往往永远处于追赶之中,学习、工作、总结,因为害怕明天就会落伍。过去的经验也只是经验之谈,不完全适合实战。细致到项目之中,程序员们进行着的毕竟也是脑力工作,是最容易产生差错的一门手艺,这个过程会产生名为BUG的东西,这个东西阻碍着项目的发展,而它本身发展成为漏洞时,它依赖生存的项目也往往随之破产。INTER的CPU享誉世界,高可靠、高效率几乎让INTER垄断了CPU行业,但这个可靠在一瞬间被打破,“熔断”“幽灵”等漏洞的发现使inter的CPU安全性瞬间降为零,尽管漏洞及时修复,但这个修复伴随阵痛,很多CPU因此丧失一部分性能,因为与这些漏洞相关的技术被暂时封锁了,而这些技术正是INTER的CPU能如此高效的关键之一。

  随着时间的发展,可靠的东西不在可靠,这正是软件工程的课题之一——寻找最为之有效的开发模式。这个过程是无止境的。

  软件工程与计算机技术相辅相成

  现如今,无数学科交叉在一起组成交叉学科,而软件工程、计算机科学这俩兄弟也不例外。“计算机技术促进了软件工程的发展,软件工程给予了计算机科学以研究样本”。在我的刻板印象里面,软件工程是种商业化的学科,逐利性很强。但时代发展后,过去科学与技术的前沿变成软件工程的前沿,大数据、深度学习成为软件工程的发展方向。想当初软件工程诞生了数据库DBMS模式,使得数据存储更加方便,而这正是大数据的基础条件。所以作为一门学科,软件工程同样深奥,同样值得深度的学习研究。

猜你喜欢

转载自www.cnblogs.com/limitCM/p/10992392.html