找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 242124|回复: 12

编码编成翔的十八般兵器

[复制链接]

该用户从未签到

发表于 2021-5-8 17:52:12 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
程序员最怕读别人的代码,比这个更可怕的是什么?
从别人那里接手一个老项目
前任程序员或者是编码能力不行,或者是跳槽之前故意摆烂……于是,一个隐藏着一堆烂摊子的项目,扔给了后来接手的人。
本来以前是代码里夹翔,后来就是翔夹代码了。
这些翔有各种各样的风味,其中就有那么十八种味道最是冲人。
Java 中有着无数的语句块,这些语句块可以嵌套。于是我们有很多优秀的产翔大师会在这些语句块中不断地嵌套,犹如无数层的俄罗斯套娃。

                               
登录/注册后可看大图
有些哥们儿很鸡贼的把一些代码藏在注释里,这些代码可以随时成为定时炸弹。
上面这段代码运行之后,说好的“Hello”呢?
在 Java 中,如果你想接手一个项目,看到一个父类的字段是非 private 的,而子类还存在同名字段,要注意了,这个项目的前任可能比较渣,你可能会恼火的想给他烧纸。比如:
你这样测试下看看
有些哥们儿走之前可能人未动心已远,也可能是懒的处理异常,他会给你留下一个谜之空白。
对不起,兄弟,你留下这种薛定谔的处理是想让人帮你掀桌吗?
有些直性子的人,认为天下万物都可以直来直去,就好像直男只会让女生“多喝热水”一样。所以,他们写的代码非常直率,直接就不考虑意外情况。
上边的代码很直率,既不考虑 a 可能为 0 的情况,也不考虑数组越界。直来直去,就好像“我不尴尬,尴尬的就是别人”。
还有些哥们也不知道是不是有什么见不得人的事情,该抛出来的异常从来不抛出来,导致你根本不知道发生了什么事情。
上面的代码里,如果文件找不到,接手人要撞墙的。
还有些人,不知道从哪里学会的邪门歪道,喜欢通过在捕获异常里写业务逻辑。对这种人,你九阴真经练成了梅超风啊。
我就想问问,如果以异常来控制流程,那么如何在这些异常中寻找真正的异常情况?
有些哥们儿会把 NPE 捕获住,恩,不解决问题,但是把提出问题的人给解决了。
但是呢,这在正常的业务逻辑里很可能就把别人坑了,因为 Null 本身就是代表着一种非法状态。拿着前朝的剑斩今朝的官,包大人干的好啊。
有些朋友可能有分离焦虑症,一个方法里能写上 1 万行代码。对不起,读书读几页都会犯困,读你这一万行代码……
有些哥们,你看看他负责的项目,你发现整个项目没几个类。你很纳闷,觉得业务很复杂,竟然可以实现的如此简单吗?你再打开他的类看源码,哦豁,这就是个垃圾箱啊,什么都能往里塞啊。
哥们儿,这不是女朋友去你租的房子里,你为了显得干净,把你那些垃圾到处塞啊。
有些爷爷不知道怎么想的,在他们眼里可能只有儿子和老子,一个类很不得搞一百层的类继承。你这样继承,您家万贯家财还能遭得住吗?
还有些哥们儿,明明知道他这个功能可能被频繁访问,比如登录的时候查相关的白名单、黑名单。哥儿们儿知道并发量大,可从来不想套个缓存,就是死从数据库里要数据。数据库想:生产队的驴也没我这么忙啊。
有些号称老程序员的老司机们,经年有余的不管线程安全。上来口吐异步同步,可是到手上了,线程就是个后娘养的,不管人家的数据安全了。合着身前叫人家小甜甜,落地了叫人家牛夫人了?
还有些哥们儿,怕线程跟怕老婆一样,一旦可能多线程了,上来先上个同步锁。你打开他写的代码,十个方法十把锁。于谦儿这种大户人家也不带这样上锁的啊。
有些兄弟可能只知道 ArrayList 能放东西。就算需要动态调整的场景,哥们儿也从不考虑 LinkedList。系统慢的跟龟爬一样,愣是说系统遇到瓶颈。
有些程序大师,他需求可能比较多,性格比较贪婪。写的方法也跟性格一样邪恶,一个方法需要的参数,从天上到地下,什么都需要。你要调他的方法,就跟有个黑洞吸住你不放一样,陷进去你就出不来了。放我去飞好不好?
有时候看到没有出口的递归方法,你就知道,写这段代码的人的人生是多么悲催,他悲惨的连测试都不敢,生怕碰伤了自己。没有出口的递归,就跟没有出路的人生一样。
用了资源您不释放,您是嫌山上的笋不够采,下山来夺笋了吧。行行好,放了那个资源吧。
·················END·················
回复

使用道具 举报

该用户从未签到

发表于 2021-5-8 18:08:53 | 显示全部楼层
转发了!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-5-8 18:09:10 | 显示全部楼层
不错!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-5-8 18:09:24 | 显示全部楼层
你历害!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-5-8 18:09:40 | 显示全部楼层
非常好!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-5-8 18:10:06 | 显示全部楼层
顶一下!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-5-8 18:10:18 | 显示全部楼层
支持!!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-5-8 18:10:21 | 显示全部楼层
沙发!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-5-8 18:10:52 | 显示全部楼层
牛逼!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-5-8 18:11:09 | 显示全部楼层
你好棒!!
回复 支持 反对

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-7-3 11:44

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表