zoukankan      html  css  js  c++  java
  • 《人月神话》读后感

           前段时间,抽空读了《人月神话》,作者对软件编程的认识、方法以及后续相关工作都进行了描述,有思想上的也有实践上的,有管理层面的也有普通操作层面的,特别是将软件编程与生活中一个个例子紧密结合,又透露着一些哲学气息。对我这个菜鸟来说,内容比较丰富,有些甚至比较生涩,我结合对我印象比较深刻的内容谈一些自己的看法。

            一、编程为什么有趣?

        关于这个问题,作者在文中写道:“首先是一种创建事物的纯粹快乐;其次,快乐来自于开发对其他人有用的东西;第三是整个过程体现出魔术般的力量——将相互啮合的零部件组装在一起,看到它们精妙地运行,得到预先所希望的结果;第四是学习的乐趣,来自于这项工作的非重复特性; 最后,乐趣还来自于工作在如此易于驾驭的介质上。

            这让我想起了自己在完成四则运算作业时的感受,老师刚布置任务时,我就感到要求我们利用代码去创造一种东西出来,是件奇妙的事情。如果我们的产品能受到广大用户的认可,仿佛我们正在做着一件有意义的事。在作业前曾设想自己想达到什么目的,然后想方设法去实现,虽然过程很辛苦,但最终看到程序按照自己的思想稳定运行,正如作者所说:“在键盘上键入正确的咒语,屏幕会活动、变幻,显示出前所未有的或是已经存在的事物。”成就感还是有的。这就是我对编程的初认识。

           二、妥善安排进度

           在编程过程中,我们时常会做一些重复性的工作或预料之外的工作,通常是因为时间安排不合理,正如作者所说:“在众多软件项目中,缺乏合理的时间进度是造成项目滞后的最主要原因,它比其他所有因素加起来的影响还大。”我们在进行编程前,总是要进行时间设计,但很多人特别是新手往往会把大部分时间放在编写代码上,在项目测试上预留很短的时间,一方面正如作者所说的乐观主义,另一方面是经验不足。写完程序运行时,发现错误,又一遍遍地查找问题,导致时间大量流逝;而且,因为时间的占用,导致影响到其他任务的完成,严重的,甚至导致整个任务的失败。

           三、合理的分工很重要

           在这一点,作者用了大量篇幅去描写,既说了小型精干的队伍,又有专业的大型系统,既明确了主管与项目负责人的区别,又说了老板与客户的关系,还有各式各样的完成任务的方法,都涉及到了分工职责,处于什么位置该做哪些事情,只有进行了合理分工,大家才能有条不紊,不会有人忙死有人闲死,或者出现很多人花费了大量的时间做着毫无意义的工作。既降低工作完成效率,也影响工作质量。

            四、不要放过任何一个小错误

            通常灾祸来自白蚁的肆虐,而不是龙卷风的侵袭。同样,项目进度经常以一种难以察觉,但是残酷无情的方式慢慢落后。我们在编程过程中,要认真细致,不能放过任何一个细节,因为很多错误往往是一个符号或标点造成的。另外,每做完一个模块,就去运行测试,遇到问题要及时修正解决,不能想着到最后再一起解决,因为一天一天的进度落后是难以识别、不容易防范和难以弥补的。等到问题迫使任务无法继续完成时,问题已经很严重了。

            这就是我看完这本书之后的一些小想法,很多地方理解得还不是很透彻。如果以后有时间,将继续认真反复研读。最后,感谢作者Frederick P. BrooksJr为我们带来这部精彩作品。

  • 相关阅读:
    一起写框架-MVC框架的概述(一)
    一起写框架-说在前面的话(一)
    一起写框架-Ioc内核容器的实现-对象的调用-@Bean注解注入容器的对象(十二)
    一起写框架-Ioc内核容器的实现-对象的调用-方法注入容器的对象(十一)
    一起写框架-Ioc内核容器的实现-对象的调用-属性注入容器的对象(十)
    一起写框架-Ioc内核容器的实现-基础功能-组件注解支持自定义的对象名(九)
    一起写框架-控制反转(Ioc)概述(二)
    一起写框架-Ioc内核容器的实现-基础功能-容器对象名默认首字母小写(八)
    一起写框架-Ioc内核容器的实现-基础功能-ComponentScan支持组件注解限制(七)
    一起写框架-Ioc内核容器的实现-基础功能-ComponentScan支持多包扫描(六)
  • 原文地址:https://www.cnblogs.com/liushaoshuai11/p/8310395.html
Copyright © 2011-2022 走看看