代码写得乱,但程序为什么运行得很稳定?

发布时间:2024年01月19日

有些程序员写的代码看起来贼乱,但是程序运行起来却极其得稳定,我们公司的老张的代码就是这样!虽然老张现在已经不怎么敲代码了,转成了项目经理,但是公司的代码库里还流传着他的“传说”!

微信截图_20231204180256.png

第一次接触到老张的代码时,我第一感觉就是:“这是什么玩意!”,甚至我还跟同事吐槽过老张写的代码:“就跟玩似的!”。

但是,时间久了以后,我发现一个神奇的现象,我自认为我写的代码已经足够严谨了,但是还是免不了会在上线后出现一些小的Bug,可我却从来没有见过老张的代码出现任何问题,注意,一次没有!

老张的代码夸张到什么程度呢?比如说,界面上有很多文本框,在文本框内回车需要将所有文本框的值进行保存。

如果是我,我会封装一个函数,不管在哪个文本框内回车,都调用这个函数来保存所有文本框的值。

但是,老张的做法是在每一个文本框的回车事件内都将所有文本框的值获取一遍,然后再进行保存。

可能有人没看懂,我再解释下,假设界面上有十个文本框,每个文本框的值都要保存的话,每在一个文本框内回车一次,那么总共就要获取十个文本框的值,再执行保存操作,至少得十一行代码。

如果封装函数的话,算上函数名称、开头和结尾的两个花括号,总共只需要十四行代码就足够了。

但是,老张的做法是在每一个文本框内的回车事件内,将那十一行代码重新写一遍!

这样,本来十四行代码就可以搞定的事情,老张却要用一百一十行代码解决。

所以,老张过去写得每一个项目里面的代码都非常臃肿,可维护性非常差,我一开始评价老张的代码,觉得如果文本框的回车事件代码有变动,那么其他剩下九个回车事件都得改。

关键是,这样的代码或者类似的代码在老张写的项目代码里非常常见。

我曾经看到老张一个代码文件有一万多行代码,而我稍微整理了下,其实只需要几百行就可以了,剩下的全是重复代码。

image.png

另外,老张的代码里有各种if判断,非常长的一摞if语句排下来,我看起来都觉得头疼,经常看一段代码前面的忘了,要翻好一会儿才能翻到代码开始的地方。

image.png

就这种我认为非常难维护的代码,最后狠狠得打了我的脸,它们运行得非常稳定,一点差错没有!即使是非常复杂的逻辑,也很难发现老张写的逻辑有什么不妥的地方!

在软件开发和其他工程领域,“重复造轮子”被广泛认为是一种低效的做法,因为它浪费了大量的时间和资源去重新创作已经存在的东西,而不是利用现有的技术和经验去解决问题。

因此,为了避免“重复造轮子”,开发人员通常会采用一些通用的方法和框架来加快开发速度,这些方法和框架已经经过了优化和测试,可以提供稳定、高效的解决方案。同时,也可以借鉴和参考其他人的经验和成果,避免重复探索和创作。低代码平台针对这类问题,应运而生。

JNPF这款开发工具是采用SpringBoot微服务架构、支持SpringCloud模式,完善的平台的扩增基础,满足系统快速开发、灵活拓展、无缝集成和高性能应用等综合能力;采用前后端分离模式,前端和后端的开发人员可分工合作负责不同板块,省事又便捷。

体验系统:https://www.jnpfsoft.com/?csdn

综上,低代码本质上是为了让程序缩减编码的时间, 把更多的时间用在程序的规划和设计上面。不管你是做后端开发、还是前端设计、销售、售前,都势必要尝试一下这款开发工具,会带给你别样的收获。

微信截图_20240119110858.png

?结语

有人可能认为老张是在写“防御性代码”,但是据我所知,他其实真不是故意写成这样的!

老张不是计算机科班出身,编程技术还是在计算机培训班学的,当初学得就不是太好,所以第一份工作还是软件测试。但是,老张写代码的思路非常清楚,而且别看他复制粘贴那么多重复的代码出来,其实哪儿对哪儿他都清楚,测试自己代码的时候也非常严谨。

但是,他的代码别人看起来就比较难受了,比如我!

可无论怎么说,你要说他代码写得差,但是的确找不到BUG呀!

文章来源:https://blog.csdn.net/yinmaisoft/article/details/135692884
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。