前言
如果你或你带领的团队经常会写出一些BUG,日常不是在解决BUG就是在解决BUG的路上,那么你的项目一定是应验了墨菲定律,并且在开发时并没有足够考虑防呆设计。团队越是疲于奔命,错的越是多。
简记
任何可能出错的事情都必将出错,因此应当尽可能降低错误出现的概率。
到底什么是墨菲定律,又该如何防呆
首先尽管实际上BUG不会100%发生,我们却依然需要假定所有一切可能发生的BUG都会发生,在我们认知范围以内尽可能的去避免产生BUG,这样的做法是软件工程保证健壮性的基本诉求。特别是设计和开发各种模块、UI、接口甚至整个系统。
然而我们要知道的是,完全杜绝BUG存在是不可能的。无论是微软还是苹果这样的公司,每个月、每年都会发布一些系统补丁,就是用来修复已经发现的BUG或漏洞。很多公司花费在修复问题上的人力资源成本早就超过了当初设计系统的投入,所以这也是为什么很多高级程序员触碰到其他高级程序员所写的代码时总是想重构,因为两个人对于BUG的预见性和认知范围是有差别的,结果会发现该掉进去的坑还是会掉。因此才会出现“造轮子一时爽,修轮子时时爽”、“一次交付,终生维护”的现象,重构系统的人便会成为下一个接盘侠,解放了上一个造轮子的人。
大多数情况下问题是可以被扼杀在摇篮中的。例如,如果出现某个语法错误,编译器会因语法错误抛出异常,告诉你这个代码不能正常编译,这就是一种防呆措施。
图1、登录时对用户输入进行校验可以有