最舒服的代码,就是我开源,但是你压根不需要去读我的代码......因为实现稳定,外界扩展架构清晰,你能遇到的业务需求,我都给你想好了,你一辈子也不需要过来读我的代码......
当然有爱好学习的,跑过来看,大部分都嗤之以鼻,这种代码我也会写啊,这么的简单,要我写也都不需要写什么注释~~~
然后你发现你写不出来。
然后给你写了完整的注释,文档,又开始抱怨,这么复杂的文档,还不如看代码呢!
舒服的代码有个特征,就是「恰到好处」
1. 长语句适当换行,既不写几屏都装不下的语句,也不换行换得和古龙一样;
2. 变量名简洁清晰地描述用途,既不学谭浩强一路a、b、c、x、y、z,也不像objc那样变量名比日本轻小说名还长;
3. 排版清爽,该空行空行,别堆成一团让人看不清,也别空太多坑死屏幕小的程序员;
4. 注释完全没有是不行的,但也不能多到连个循环和分支都要挨个注明用途。在复杂业务和算法处适当提示,简明扼要,别絮絮叨叨写成散文;
5. 函数方法留有优化和扩展余地,不要写得过死,但也不要在0.1版内测时就考虑百万用户并发的性能问题;
不舒服的代码就是:
这个if下的代码块究竟到哪里? else去哪儿了,是我没找到,还是压根没有? 妈的怎么全是Ctrl+c Ctrl+v的代码。改一次就要改n个地方 省着用变量,前后调用的不同函数,返回同一个变量 函数名明明是getXXX,怎么还有插表?究竟能不能在这里面改? 最后测试时,为了满足n层的嵌套条件,硬是花了n倍的测试时间。
不舒服的代码最典型的特征:
1. 逻辑混乱
2. 不好修改
除此之外,还有很多颜值特征,容易引起反感:
1. 命名无意义
2. 语句长
3. 对齐凌乱
4. 条件语句复杂,断行多
5. 花括号不一致
6. 嵌套太深
7. 函数太长
等等等等。
专业的程序员写代码的时候,想的不是使用多么炫酷的技巧,而是追求这样的目标:这段代码应该是傻子都能看懂,不会有人找我问为什么这么写。
达到这个目标不容易,但是值得去努力。
领取专属 10元无门槛券
私享最新 技术干货