差点当场社死,自己居然不认识自己写的代码

一段不为人知的历史

以前写完代码老是会被组长骂“代码丑、写得什么乱七八糟的?”

我也纳闷了,代码不都是键盘一个个敲出来的,咋还能看出丑不丑?功能实现了没有Bug不就行了?

然后组长指着我的代码会问,这个类是干啥的?那个函数是干啥的?导入的包又是干啥的。

我都会不(xin)厌(ru)其(si)烦(hui)地解释一通,然后在代码上写上注释。

「直到有一天......」

我:“这垃圾代码谁写的?注释的什么乱七八糟的!!我**”。

我继续:“这代码缩成一团是哪位人才写出来?这个套了5个if语句的函数是判断啥的?看注释也看不明白啊!”

此时有同事在角落暗笑,我以为他知道是哪位“大神”写的,便问他是否知道这些“shit code”是谁写的?

他说知道是谁,我便让他把他的名片发项目群里,我需要找他探讨下业务逻辑。

于是我的名片被发到了群里,还附上了git push上去的记录。。。

论祖传代码的形成 

因为一些项目需要迭代式开发,所以初始(第一版)状态的代码的整洁度和结构是非常重要的。

就像一条大马路干干净净的,你手上握个垃圾都不好意思乱丢。

如果这条大路上路灯、绿化都整整齐齐的,我相信你作为开发也肯定会很守规矩的往上面再增加一些代码。

如果一条马路上臭气哄哄,各种规划也乱七八糟,你想往这马路上想增加个垃圾桶都发现根本没地方放(例如在五个if语句中,再增加一个判断)。

啥?你想推翻重新写?你先把那5个嵌套的if的逻辑理清楚什么关系再说吧。

如果你真的把这5个if的关系理清楚并且重构了,你就需要跟测试说需要扩大测试范围,因为你把代码重构了。

测试:***。

「一般祖传项目代码就这样慢慢成型了。」

如何避免祖传代码的形成?

这个问题我跟一些资深大佬探讨过,他们几乎都表示只要项目迭代次数多,祖传代码是避免不掉的,可能只是时间问题。

「虽说很难避免,但是可以“预防”。」

以下推荐几个方法,可以有效“预防”祖传代码:

  1. 遵循项目手册上的推荐编码规则(如果没有推荐编码规则,可以选择每个语言对应的规范手册,例如Python的PEP8规则);
  2. 注意代码复杂度(通过分析代码行数、循环和其他参数来检验函数的复杂度);

当你在一个函数中写出第三个if的时候,就可以考虑把if语句打散,或者是使用其他的选择语句重构它。

拼写检查

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值