如何写O bug代码? 你,会了吗?

原标题:如何写Obug代码?你 , 会了吗?
程序员高级与初级之分 , 也有高薪与低薪之分 , 同为程序员为什么有这么大的区别呢?其实一个主要的原因就是他们写出来的代码质量 , 所谓的代码质量 , 衡量它的一个重要标准就是出现bug的数量和代码的简洁程度 , 并且前台的运行速度会给出一个代码好与不好的最真实的反馈 。 每个程序员的梦想都是想写出0bug代码 , 但这几乎是不可能的 , 有的人一次就写成没有bug的代码就是相当理想的状态 , 如果一次写不成 , 但是能后做到多次写成没有bug的形式也是极好的 。 那么怎么才能做到这些呢?
理想状态用更准确的说法是:程序员们在写代码阶段就把bug都消灭了 , 然后测试团队运行完测试用例以后 , 就会发现的bug数为零 。 但其实没有bug也不是绝对的准确 , 因为测试阶段没有发现Bug并不代表上线以后也没有bug , 只能证明在测试后没有bug的话 , 它就是一段高质量的代码 。 对于零bug的代码 , 可能有人会说是代码的功能太简单了 , 以至于没有bug,但实际上代码应该是属于中等复杂度的 。 零bug代码是怎么写出来的呢?主要有这些关键点:

如何写O bug代码? 你,会了吗?
文章图片
图片来源于图虫创意
1.透彻理解需求
很多人看到需求以后 , 想都不想立刻就开始编码 , 这是存在很大问题的 。
作为码农 , 虽然不是需求分析人员 , 也要考虑下为什么要有这个需求 , 但是这个需求有哪些主干路径 , 有哪些分支路径 , 需要在脑子里形成一个图谱 。
尝试着把自己假想成用户 , 换位思考 , 看看用户会如何使用这个功能 , 通常你都会发现一些意想不到的情况 。
2.良好的设计
把功能划分成接口良好的模块 , 让每个模块各司其职 , 又能依靠良好的接口有效合作 , 能极大的减少bug的产生 。 要做到这些 , 考验的就是基本功了 , 没有速成大法 , 只有自己慢慢苦练 , 有一点还要注意的是 , 这里说的设计不一定是文档 , 有可能只是在你的脑子里 。
3.处理好边界条件
据说80%的bug是在“边界”发生的 , 而这些边界条件包括:
l输入数据不合法
l数组越界
l调用的方法抛出异常
l文件不存在
l文件权限不够
l调用其他系统接口时数据未能正常返回
l打不开数据库连接
l数据库表在初始情况下没有值
l运行时间过长导致超时
很多时候 , 大量的代码被用来处理边界条件 , 有时候甚至比业务代码都要多 。

如何写O bug代码? 你,会了吗?
文章图片
图片来源于图虫创意
4.充分的测试:不放过一行代码
不要认为测试就是测试人员的事情 , 作为开发这串代码的人员也难脱干系 。 在编写完一串代码后 , 一定要保证每一行代码都被你执行过 , 没有留下任何死角 , 这一点非常重要 。 你可以是通过写自动化测试覆盖到的 , 也可以是通过手工执行测试覆盖到的 。 但是千万不能是你觉得代码简单 , 不会出问题 , 就不管了 。
5.考虑代码修改对别的模块的影响
很少代码是完全独立的 , 总是或多或少和其他地方扯上关系 , 修改这样的代码就要小心了 , 这是个主要的bug发生地 。 修改代码时一定要考虑代码的修改对别人的影响 , 并且做回归测试 。
为什么要写零bug代码呢?因为零bug代码会带来巨大的好处 , 开发完成 , 进入功能测试或者验收测试阶段以后 , 成本就会很低 , 并且测试也会很快 , 还有一点 , 因为代码基本上都是一次性通过 , 没有bug就不需要修改代码 , 这样返工的成本就不存在了 。
写出零bug代码 , 或者接近于零bug代码是每个码农的追求 , 写出零bug代码其实也不太难 , 只要足够的用心 , 有着对需求的透彻理解 , 清晰的思路 , 加上良好的设计和编码 , 以及非常充分的测试 , 基本上就可以了 。
虽然完美的代码几乎不存在 , 但我们可以尽力使代码精炼再精炼一些;完美的程序员也几乎没有 , 但我们也可以尽力使自己的技能提高一些再提高一些 , 哪怕只有一点点 , 也能将无数人甩在身后 , 这就是在代码的世界里 , 提高一点点 , 就是一个巨大的进步!

如何写O bug代码? 你,会了吗?
文章图片
如何写O bug代码? 你,会了吗?】图片来源于图虫创意