您当前的位置:首页 > 电脑百科 > 程序开发 > 程序员

程序员为什么要一直改bug,不能一次写好吗?

时间:2020-07-05 11:29:50  来源:  作者:

代码和bug如影随形,每一个应用程序都有bug。从理论上讲,因为测试无法覆盖所有情形,所以存在bug的可能性一直有。

水平再高的工程师,也无法一次写出没有bug的代码,更不能一次性修复所有bug,这和不能一步登天是一个道理。

从另一个角度讲,程序中的bug有不同的种类,原因也各不相同,甚至可以划分为三六九等。可以这么说,"不同水平"的bug,一定程度上反映了软件工程师的专业水平。

程序员为什么要一直改bug,不能一次写好吗?

 

1, 文案bug

这类bug大多可以避免,原因多是因为粗心、没有认真检查,或者多次反复修改文案造成。

程序员为什么要一直改bug,不能一次写好吗?

 

2, 代码级别的bug

代码中常见bug很多,比如变量引用错误、计算公式错误,还有常见的异常处理等错误。

这类问题容易修复,并且能够通过代码检查、功能测试等方式减少甚至避免。

初级工程师写代码时常犯这类错误,随着水平提高和经验积累,代码质量逐步提升,bug也就随之减少。

程序员为什么要一直改bug,不能一次写好吗?

 

3, 逻辑错误

实现业务逻辑时,如果代码和业务需求不一致,比如计算每月的最后一天,如果使用30天或者31天,都会引起错误,因为每月天数不固定。

那么应该如何避免这类bug,又不至于将代码变得过于复杂呢?经常使用一些数学算法、公共代码库或者第三方开发包等。比如上个例子,可以使用下个月的1日减去一天,得到本月最后一天。

这类bug经常由于测试覆盖不到而较难发现,比较好的方式通常采用单元测试,覆盖足够的业务场景,从而保证代码逻辑符合预期。

程序员为什么要一直改bug,不能一次写好吗?

 

4, 调用模块错误

开发应用系统时,经常调用一些功能模块,比如Python开发时使用的urllib,还有自己开发的应用服务,比如订单配送管理。

应用上线后,业务逐渐丰富完善,系统功能越来越复杂,常常进行模块服务划分,然后通过接口调用协作。

不同模块的接口、数据、版本不一致时,会产生一些bug,不仅难于发现,而且较难修复。这类问题常常需要配合单元测试、自动化测试,并在修复后回归测试。

为了提高工作效率,自动化测试工具配合构建服务器,在每次代码提交时或者每天定时构建时,自动触发任务,确保测试用例覆盖业务场景。

程序员为什么要一直改bug,不能一次写好吗?

 

5, 系统集成bug

2020年4月22日,发生了令人不可思议的中行原油宝穿透事件。原油宝交易系统在提交价格时,对负数价格进行验证,判定无效,所以也就禁止了进一步提交操作。从单个系统看,这样做是没有问题的。

但是还有CME的WTI原油期货交易系统,它是允许负数价格的,这就悲剧了。

4月20日,因为疫情恶化,美国原油期货合约结算价格暴跌,报出了-37.63美元/桶的历史性负数,下跌306%,引爆全球市场。根据中行4月22日公告,旗下理财产品原油宝将按照-37.63美元/桶的官方结算价定价。

这意味着投资者所有本金都将荡然无存,还要倒欠银行钱。

多个系统间的bug需要通过完整的用例设计来避免,比如中行原油宝,测试要覆盖到交易所系统的完整用例。

程序员为什么要一直改bug,不能一次写好吗?

 

 



Tags:程序员   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
我 2010 年开始在 Github 上开源自己的代码。在 push 代码之前我根本没想过为什么。只是因为我当时学了 git,而且我又觉得 Github 很方便,可以用来备份自己的代码。而后我就参...【详细内容】
2021-12-28  Tags: 程序员  点击:(2)  评论:(0)  加入收藏
JAVA开发工程师(北京)本科 3-5年经验 面议 (招1人)岗位职责:1.负责我行应用系统的设计,完成软件编码工作,负责管理代码设计规范等工作;2.根据应用需求分析说明书,评估需求研发的可行...【详细内容】
2021-12-27  Tags: 程序员  点击:(2)  评论:(0)  加入收藏
今天聊聊编程的本质。程序就是数据结构+控制+逻辑,程序员编程工作的本质是翻译,翻译机要来了,程序员怎么办?黑客帝国中的程序黑客帝国4就要上映了,不知道前三部你看懂了么?值得多...【详细内容】
2021-12-17  Tags: 程序员  点击:(9)  评论:(0)  加入收藏
什么是shellshell是c语言编写的程序,它在用户和操作系统之间架起了一座桥梁,用户可以通过这个桥梁访问操作系统内核服务。 它既是一种命令语言,同时也是一种程序设计语言,你可以...【详细内容】
2021-12-16  Tags: 程序员  点击:(18)  评论:(0)  加入收藏
我是一名程序员关注我们吧,我们会多多分享技术和资源。进来的朋友,可以多了解下青锋的产品,已开源多个产品的架构版本。Thymeleaf版(开源)1、采用技术: springboot、layui、Thymel...【详细内容】
2021-12-14  Tags: 程序员  点击:(21)  评论:(0)  加入收藏
梦醒之后,每个人对于这份职业的未来、互联网行业的未来,以及更重要的,自己的未来都有了更现实的判断 文 | 祝颖丽编辑 | 黄俊杰一个生于 1986 年的人,他所走过的前半生:从出生起,...【详细内容】
2021-12-03  Tags: 程序员  点击:(16)  评论:(0)  加入收藏
前些天在头条看到一个八二年的哥们,述说自己找工作屡次被拒的问题,在网上引起了广泛的讨论,这件事给我留下了很深的印象,因为这哥们和我同是程序员,都人到中年,上有老下有小。唯一...【详细内容】
2021-12-01  Tags: 程序员  点击:(20)  评论:(0)  加入收藏
很多读者都问过一个问题:程序员如何实现高速成长?之前也写过相关的文章,强调的主要是夯实计算机体系基础知识。 再说另一个诀窍:多看经典开源项目,这些项目大多是众多顶尖程序员...【详细内容】
2021-11-30  Tags: 程序员  点击:(15)  评论:(0)  加入收藏
序言:前段时间织梦因为版权的问题在网上闹得沸沸扬扬,也提醒了众多开发者选择cms上应该谨慎使用,今天给大家展示一款自己搭建的内容管理系统,不用担心版权的问题,而且非常容易维...【详细内容】
2021-11-30  Tags: 程序员  点击:(34)  评论:(0)  加入收藏
近日,一位45岁的网民在中国政府网留言求职,引发关注。该网民自称是一名软件开发人员,今年45岁,精通各种技术体系,“而我辞职回家半年后再回来寻找工作机会的时候,却发现连个面试...【详细内容】
2021-11-17  Tags: 程序员  点击:(42)  评论:(0)  加入收藏
▌简易百科推荐
我 2010 年开始在 Github 上开源自己的代码。在 push 代码之前我根本没想过为什么。只是因为我当时学了 git,而且我又觉得 Github 很方便,可以用来备份自己的代码。而后我就参...【详细内容】
2021-12-28  程序员的喵    Tags:Github   点击:(2)  评论:(0)  加入收藏
JAVA开发工程师(北京)本科 3-5年经验 面议 (招1人)岗位职责:1.负责我行应用系统的设计,完成软件编码工作,负责管理代码设计规范等工作;2.根据应用需求分析说明书,评估需求研发的可行...【详细内容】
2021-12-27  just do丶IT公众号    Tags:国企   点击:(2)  评论:(0)  加入收藏
今天聊聊编程的本质。程序就是数据结构+控制+逻辑,程序员编程工作的本质是翻译,翻译机要来了,程序员怎么办?黑客帝国中的程序黑客帝国4就要上映了,不知道前三部你看懂了么?值得多...【详细内容】
2021-12-17  博士聊IT    Tags:程序员   点击:(9)  评论:(0)  加入收藏
梦醒之后,每个人对于这份职业的未来、互联网行业的未来,以及更重要的,自己的未来都有了更现实的判断 文 | 祝颖丽编辑 | 黄俊杰一个生于 1986 年的人,他所走过的前半生:从出生起,...【详细内容】
2021-12-03    财经杂志  Tags:程序员   点击:(16)  评论:(0)  加入收藏
前些天在头条看到一个八二年的哥们,述说自己找工作屡次被拒的问题,在网上引起了广泛的讨论,这件事给我留下了很深的印象,因为这哥们和我同是程序员,都人到中年,上有老下有小。唯一...【详细内容】
2021-12-01  云南贤哥在深圳    Tags:程序员   点击:(20)  评论:(0)  加入收藏
很多读者都问过一个问题:程序员如何实现高速成长?之前也写过相关的文章,强调的主要是夯实计算机体系基础知识。 再说另一个诀窍:多看经典开源项目,这些项目大多是众多顶尖程序员...【详细内容】
2021-11-30  findyi    Tags:程序员   点击:(15)  评论:(0)  加入收藏
近日,一位45岁的网民在中国政府网留言求职,引发关注。该网民自称是一名软件开发人员,今年45岁,精通各种技术体系,“而我辞职回家半年后再回来寻找工作机会的时候,却发现连个面试...【详细内容】
2021-11-17  郭主任    Tags:程序员   点击:(42)  评论:(0)  加入收藏
即使在安全技术取得进步之后,网络犯罪仍在不断增加。据统计,网络犯罪每分钟给企业造成约 290 万美元的损失。主要是因为新技术不断涌现,难以维护安全。随着网络威胁的增加,网络...【详细内容】
2021-11-04  章大千    Tags:编程语言   点击:(40)  评论:(0)  加入收藏
北漂小伙李强(化名),在北京互联网大厂工作7年,月薪3万,离职回老家开摄影店,亏了200万。李强出生于山西一座名不经传的小城市,互联网专业大学毕业的他,没有听父母的劝言回到家乡考公...【详细内容】
2021-10-29  霸王课  今日头条  Tags:程序员   点击:(53)  评论:(0)  加入收藏
程序员是青春饭,这在国内似乎是公认的。所以很多公司不愿招大龄程序员,很多程序员也“知趣”地及早转型。有的做管理,有的做架构,我还见过改行卖保险的。总之,年龄大了不想敲代码...【详细内容】
2021-10-27  编程的艺术    Tags:   点击:(30)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条