梦断代码阅读笔记02

死定了---

   这几天阅读了梦断代码第一章的部分,名为死定了,为什么会死定了呢?这就是程序员的克星——bug。文章中提到了软件缺陷列表,列表中给出了开发者们需要修复的所有程序问题,想起了建民老师经常让我们写的缺陷记录日志,将自己编程中遇到的缺陷记录下来,并记录下修改的过程,耗费的时间,来对自己进行一个评估,并且能够在下次再出现相同问题时迅速找出并进行改正。“约翰死定了,在下个版本出来前他得连干五百个钟头”,为何会有如此严重的缺陷呢?正如系统架构师约翰·安德森所言,软件建造之前,就应该先有蓝图,如同建造房屋一样,如果没有蓝图,就没有清晰的目标,会碰到没有预料到的各种问题。之前看过关于软件架构方面的书,从中体会到了构造一个软件之前有一个清晰的架构才能轻松地完成软件。

  “臭名昭著的窗口闪烁问题”,虽是一个小问题,但为了使用的友好性,我们还是应该尽力去修正该缺陷。正如程序中的很多小问题,我们要尽可能地去发现、去改正,学习程序测试或者软件测试的方法。我们要尽可能去增加异常处理机制,以保证程序或者软件的正常运行,减少因用户的误操作导致程序出现问题的现象的发生。

   而我们又如何去预知完成该任务或者修复该缺陷会花费大约多长时间呢?4小时?8小时?抑或更多。黑洞似的缺陷——即无法确定修正所需时长的缺陷。这就需要我们在日常编程中能够养成计时的习惯,通过每一次实践的记录,从而预估自己完成一个类似工作量的任务时会花费的时间,就不会出现注入文章所述的状况,修补缺陷时间的未知性。

   文章又阐述了一些关于开源与加密源码的问题。程序源代码是商业软件公司最重要的资产,因此只有该软件公司的程序员才能接触到这些源代码,即使你是编程老手你也无法修补已知缺陷。但也有一些软件是开源的,供大家学习、完善,我们在学习中也可以通过学习一些源码,提高我们的编程能力、增长见识。

原文地址:https://www.cnblogs.com/ttzz/p/6942208.html