本文共 1385 字,大约阅读时间需要 4 分钟。
来源:麦叔编程
作为一个老司机,我见过很多让人吐血的代码,关键是其中有些我自己写的。
对于这种代码,我只能说:咱看不懂,也不敢修改!
下面我分享一些看了让人啼笑皆非的代码。最后再分享几个很简单实用的写代码的技巧。
下面来看一些糟糕的代码,是不是比你写的还糟糕:
有办法可以更简洁一点吗?
都说Scratch容易懂,我怎么觉得这个很难懂呢?
再来一个Scratch的程序
大哥,用程序画图也不带这样的吧?
这个代码一共980行,没有更好点的写法吗?
这是我同事写的,3个月后,我问他,他自己都不理解了!
支持6个玩家的游戏代码,如果要支持100个玩家呢?
异曲同工之妙,一个编程老师写的代码,不担心教坏学生吗?
这个代码,你到底想怎么样?
简洁是美德,但是这样真的难以看懂啊!
这样的代码,我可能也写过,都是为了捉异常:
这个代码,开发者本人能在一分钟内看懂,我就服了他了
学点正则表达式会死吗?据说来自12306的源代码:
这是啥东东?
WTF?
确定写这个代码的人不会被打吗?
人肉递归?
写注释是好习惯,可你这也太多了吧?
曾经有个大厂程序员朋友说过:
一个程序模块,每个新接手的人都会说之前写这个模块的人是SB!
然后自己添加功能,添加功能,添加功能!
一段时间后,交给后一个人接手,并重复着这个故事!
为了让这个故事在你这里结束掉,我来分享几个很简单的小技巧:
取有意义但简单的变量名,避免i, j, k, l, m, n这样的变量,也尽量避免太长的变量名。
当然,我同意:取变量名是世界上最难的事情之一!
每个函数不超过15行,这不是绝对,总的来说,函数不要太长。
这怎么可能做到呢?可以的,看下一点建议。
把一大段逻辑封装到多个小的函数中,每个函数实现一个比较独立的功能,函数名要直观,看了就知道是什么意思。
有时候你觉得没法分割了,其实可以的。一个复杂的逻辑判断都可以封装到一个函数中,这样在主函数中会非常清楚的知道在做什么。比如:
def is_maishu_handsome(): # 此处有很多逻辑判断 return True
如果你去看一些优秀的源代码,比如编程语言自带的库中的源代码,会发现很多这种短小的函数,它们都基本做到了上面三个点。
适当加注释
这里说的是适当,但是不宜过多。为什么呢?因为代码本身就是最好的注释。好的代码,如行云流水,看了就知道什么意思。还需要那么多解释吗?
所以首要的是写好的代码,不要过多靠注释来掩饰自己的不够优雅的代码。
勇于重构代码
代码就像一个人,开始身材苗条又单纯,容易看懂,运行速度也快。但随着生长,变得又胖又臃肿,不敢做出改变。这时候人要加强锻炼,不断突破自己。而代码也是一样的,随着功能不断增加,必然会代码越来越长,逻辑越来越复杂,这时候大胆的去重构,提取新的函数,应用新的设计,才能继续保持年轻,快速。
就分享5个,如果你能做到,上面的故事就会从你这里终结掉。谢谢你为中国代码的平均水平提高作出贡献!
---------End---------
回复 600 ,获取
回复 markdown ,获取
回复 time , 获取
回复 str, 获取
回复 SQL50 ,获取
回复 mat ,获取
????分享、点赞、在看,给个三连击呗!????
转载地址:http://rizzb.baihongyu.com/