《大道至简--软件工程实践者的思想》读后感

发布时间 2023-07-28 20:13:57作者: 起名字真难_qmz

  首先我觉得《大道至简》虽然是一部经典著作但其中蕴含的工程思想放在现在仍不过时,但是由于其内容包含了很多专业术语,可能更加适合软件工程的从业人员去阅读,作为软件工程的入门书籍的话可能并不会对其中的内容有太多的实感,但是有助于初步认识一下软件工程的面貌和精神内核。

  读完这本书,我深刻认识到软件工程实践是一门综合性很强的学科。它涉及到软件设计、开发流程、项目管理等多个方面的知识。软件工程并不是简单的去码一行又一行的代码,那叫程序员,而软件工程更多的是你要怎样去实现这样的一个工程,工程就意味着除了要去码一些代码,更多的是团队之间的合作,随着工程项目的不断扩大,团队协调合作就越发重要,而团队之间又存在着分工,也就产生了组织,组织产生角色,所以在项目中要明确自己角色的定位。

  在搞清自己的角色之后就可以开始着手项目了,有关项目就产生了怎样做的疑问,怎样做不是说由程序员决定的,是由客户需求决定的,这样就产生了与客户之间的沟通,沟通是至关重要的,要坐在客户的角度,以客户能听懂认可的语言去协商,只有充分明确了客户的需求才有利于后续工作的稳步开展。

  在与客户充分沟通之后就可以针对客户提出的种种需求做出需求分析,要思考工程的时间和成本,针对分析提出项目计划,当项目到手里之后就要开始考虑编程的方法,如前两章而言,愚公移山固然成功但是要耗费几代人的努力,子子孙孙无穷尽也,然而客户是不会等你三代子孙的,所以编程除了要保证可行性,还要考虑时间成本,要去偷一些懒,所以如书中而言:程序 = 算法 + 结构 + 方法 ,利用这类编程思想才成功让每一个软件工程从业者不至于花上几百年去完成移山壮举。

  在完成第一版设计之后,不要急着去填充细节,要将第一版框架去交付客户,再与客户充分沟通,沟通是贯穿整个项目之中的,除了交付客户之外,还要对每一版设计进行测试以确认项目的运行情况,针对开发过程和测试过程要去做一个history,以便针对项目回滚复现或者后来者快速入手项目,同时在项目开发遇到瓶颈时,不要去钻牛角尖死磕,这样会延误工时消耗客户热情,实现才是目的。

  项目的最后阶段还要不断循环上面的周期,不断地增删改查,针对新的客户需求做出新的调整,这样才能够保持程序的生命力。

个人感受: 以前就觉得软件工程就是编写代码,从没有想过要将它作为一个工程去对待,就容易忽略团队之间的配合,导致程序设计遇挫。

      如果这样做的话,延误工时不说,还容易白费力气,降低开发效率,缺少合作也会令程序漏洞百出,同时忽略工程性质容易跳过软件开发的五个阶段,软件容易产生纰漏

 

      所以要在以后的设计中,要遵循软件工程的瀑布模型,重视团队合作,站在多个角度去思考。

  总的来说,这本书是一本值得一读的软件工程实践指南。它给予读者深入了解软件工程领域的机会,同时也提供了丰富的实践经验和思想启示。无论是正在从事软件工程的从业者,还是对软件工程感兴趣的读者,都可以从这本书中获得宝贵的知识和经验,为自己的职业生涯和学习道路带来积极的影响。