人月神话 阅读笔记(1)

  最近读了《人与神话》其中有一些感触,只能说是对于编程的一些认识吧。

  现在我们在大学中的学习,实验等一些编程,只能说是最基础的“车库”中的产品,那些在高级一些的编程产品、编程系统以及更高级的编程系统产品现在的我们都接触不到。目前我们的编程结果,只是做了一些基础的测试,最多的也是测试了不过十几二十遍,但是在高级一点的编程产品,那个都需要上百上千次的测试,以及相应的文档。在测试的时候 还需要测试对于不同的输入,需要不同的应对方法,也就是程序的健壮性。即便是这个健壮性,现在的我还没有设计出一个程序来说明,他对任何的不合法的输入都有应对的办法。对于之后的编程设计中,我要多多注意这方面的测试。

  那么什么是编程呢,我个人认为编程是将任务通过计算机语言编写成程序,来使一些工作更加简单方便。而想要做好编程,在IT界有一个一万小时定律,但是对于我们这些自制力稍微弱的人来说,一万小时有一些长,但是这个一万小时不是让你一气呵成,而是象征着一种积累的过程,也代表着你编程能力的提高。而在《人月神话》这本书中也提到了一些关于计算机行业的兴趣,以及苦恼。完成一个项目或者是程序时是兴奋的,但是调试程序解决bug时是烦躁的。这,就是编程。一个许多人痛苦挣扎的焦油坑以及一种乐趣和苦恼共存的创造性活动。但是,对于我来说,它并不是一个焦油坑,而是一个磨刀石,是促使我发展一技之长的磨刀石。

  在一开始编程的时候,最初的时候只是设计简答的程序,就要求我们先思考这个程序应该如何去做,在去进行编程,而不是一上来就开始那几固定的几步,同时还应该估算一下这个程序以自己的能力多长时间能设计出来,在脑海中应该有一个具体的结构,而不能走一步看一步,对于那些进度和时间有差别的应该,积极去调整,而不是再次拖延。

  《人月神话》这本书中的人月是一个计量单位,他所记录的是一个项目完成的时间以及所工作的人员。在这本书中给出了一些管理方面的技能。这本书中提到了一个这样的结论:如果一个 200 人的项目中,有 25 个最能干和最有开发经验的项目经理,那么开除剩下的 175 名程序员,让项目经理来编程开发。我很赞同这种结论,只有更加能干的人才能设计出非常好的程序。很多人都说编程经验很重要但是我觉得这种编程经验需要自己不断探索,设计出更加简便,空间利用更少,以及运算时间更短的程序。