一,什么样的代码才是优秀的代码

许多去 Google 参观的人,用完洗手间后,都会惊奇而略带羞涩地问:“你们马桶前面的门上,贴着的 Python 编程规范,是用来搞笑的吗?”。搞不搞笑不知道,但是可以看出Google 对编码规范的要求极其严格。今天,我们就来聊聊编程规范这件事儿。

当然了,搞定编程规范写出优秀的代码之前我们得先搞清一个问题,那就是什么样的代码才是优秀的代码?代码又是写给谁的?代码不规范会有什么问题吗?我相信不管是新手还是老鸟可能都有一些这样的疑问,甚至很多新人对于代码规范这个事抱有很多不屑,那么我们接下来会通过几个问题来聊明白编程规范这个事。

1.代码是写给谁的?

代码千万条,整洁第一条,代码不规范,同事两行泪

随着科技与互联网的进步,今天得我们可以很容易从事计算机相关工作,基本上只要简单懂一些计算机编程相关的内容,就可以写出让计算机理解和执行的代码,但是处在当下的我们,写出的代码虽然是需要计算机执行.但是更多的情况下,我们编写的代码是给人类理解和阅读的.

那么既然码更多是写给人看,而不是仅仅给机器跑,那么我们在编写代码时就需要注意代码的规范问题,因为代码不规范会导致非常多的问题,甚至在历史上美国曾出现过因为代码不规范程序员枪击四名同事的事件。因此代码不规范,可能不光是蛋疼的问题,还有性命之忧。

当然了,我相信这种事情不会在咱们国内发生,但是代码不规范确实会带来很多的问题,接下来我们一起看一下。

2.代码不规范导致的问题

代码不规范会引起很多的问题,轻则影响心情,重则可能会导致产品甚至公司付出重大代价。

比如你有没有过这种情况,刚找到一份新工作,想要快速融入,准备大展身手结果看看开发的项目代码一团如麻.就好像一盆冷水从头凉到底,或者你每天开心工作,正准备和你的上司领导提提涨薪的事,结果某天你的上司看到你写的代码,把你叫过来,你对着代码跟他解释了半天他依然一头雾水,此时的你满头冒汗,心里却哇凉哇凉的。

又或者某个职场老司机,本来摩拳擦掌准备在公司大干一场,也弄点期权股份啥的,结果在天天加班改代码找bug,团队中每个人的代码风格迥异,不光影响了团队合作,甚至耽误了产品交付,天天被领导dict。

还有一些初创公司,产品和领导不停的天天催着进度,搞得你们天天被催促着着急赶工,代码写的乱七八糟,特性越加越多,结果蹦贵的几率越来越大,最后代码无法管理,未能如期融资,产品下线,公司倒闭,曾经心想着有朝一日能够再回头清理代码进行调优,结果稍后等于用不。

还有一些不善管理和不懂技术的leder,前期只知道码人头,扩充团队,巩固手中权利,团队初期开发进展迅速,但是随着时间却慢如蜗牛,代码的每次修改都会影响其它几处代码,并且项目随着开发团队人员的变动和迭代,每一次都会有所改变,却越来越糟糕,最后束手无策.只能推到重来。

在这里插入图片描述

看看吧,各位小伙伴们上面的种种案例,实在太多了,数不胜数,有的小伙伴可能会觉得我危言耸听,但我想说,代码不规范会从一开始的点点滴滴影响着你和团队甚至是产品和公司,危机不爆发不见得就不存在,可以找你身边的大佬好好聊聊关于编码规范的问题,看看是不是哥说的这样,相信到时你就会明白了。当然了,也有一些小伙伴已经经历过或者正在经历。那么接下来我们再来看看代码规定的好处吧

3.代码风格规范的好处

任何一个傻瓜都能写出计算机可以理解的代码。唯有写出人类容易理解的代码,才是优秀的程序员。

代码不规范导致的问题非常突出,同样的代码规范也会带来很多的好处,比如写出的代码能让别人夸赞,或者总是能够快速的回到代码的思路中继续码字,即便项目很大很复杂,总是能够很快的发现问题,同时提高自身的成长,这些可能不光让你心情愉悦,同时团队合作的氛围也会很好,这样的工作氛围你肯定喜欢。当然好处也不止这些,我们总结一下代码风格规范带来的好处吧。

  • 利于团队合作
  • 发现潜在的bug
  • 提高运行效率
  • 降低维护成本
  • 有助于代码审查
  • 有利于代码安全
  • 有助于自身的成长
  • 令人心情愉悦

以上就是关于代码规范的好处,说真的它真的会影响每一个人,甚至你们的团队。川哥就见过,开发团队中,面对面直接口吐芬芳开怼的,电脑、键盘、鼠标满天飞的场景。

这样的团队肯定不会是你想待的。那么既然我们了解了代码规范的优缺点,那么有小伙伴有疑问了,说了这么多什么样的代码才是优秀的代码呢?

4.什么样的代码才是优秀的代码

好的代码,就像是好的笑话——无需解释就能让别人明白。如果你的代码能够做到不解自明,在大多数时候,你根本无需为其配备说明文档。

我们通过一本书来举个例子:

好代码像是一本写作技巧高超的人所写的书,它既容易理解又分章明确,每一章都有清晰的主旨,让人赏心悦目。而坏的代码就像是刚刚学会写字的人所写的书,章节之间纷乱复杂,没有明确的主旨,连篇累牍的重复一句话,而且毫无缘由,甚至作者在一开始设定了一些规则,但是在后面的内容中却自己不断的违反这些规则,就像是突然间书里出现了一个吸血鬼,而且还能在白天出来吸血。

优秀代码的特点

优秀的代码总是具有很多好的特点,比如

  • 代码可读性,不只是你,还有你身边与你合作的其他开发者。
  • 可维护性——让你的代码在修改的时候很简单
  • 简洁性——不要让你的代码看上去毫无必要的复杂
  • 效率性——尽可能的让你的代码获得最快的运行速度
  • 明确性——如果你的代码能够做到不解自明,在大多数时候,你根本无需为其配备说明文档。在为方法和属性命名的时候,做到尽可能的合理。把长的代码进行拆分。不要复制/粘贴代码块。

如果你的同事不能轻松的看懂你写的代码,那么你的代码就不够好。

如何知道我写的代码好不好?

那么我如何知道我所写的代码好不好呢?其实我们有一些很简单的办法来进行简单的代码质量测试。

简单的代码质量测试
  1. 找一个从来没读过你的代码的开发者,让他看你的代码,并且让他试着说出每一个模块的作用。

  2. 如果你经常需要向他进行解释,那么说明你的代码不够好。解释的次数越多,代码的质量就越低。

  3. 如果你只是静静的坐在一边,他无需问你任何问题,那说明你的代码质量很高。

当你在写代码的时候,一些信号可以证明你写的代码质量不错:
  • 代码写的很聪明,但是又不会过分的聪明
  • 无论在速度上,还是可读性上,你都使用了最佳的算法
  • 类、变量和函数都得到了正确的命名,让人看一眼就能理解
  • 休息了一个周末之后,你继续写代码,发现自己可以立刻继续之前的工作
  • 那些需要重复使用的东西总是可用
  • 你所使用的方法都很短,最理想的情况下要少于50行,最多不超过100行而且能够完美的执行单个任务
  • 在调用方法的时候,你有着足够的信息,无需在代码堆中苦苦寻找
  • 能够很轻松的在此前的代码中进行功能添加和修改
  • try/catch块的体量尽可能的小
  • 毫不费力的就可以写出单元测试

以上就是我们的一些简单但很有效的代码质量测试,希望通过这些大家能够正确的认识编码规范的重要性,如果要对优秀代码进行总结的话,那就是优秀的代码=好看+安全+高效。当然这些都是经验的总结,其实关于写代码,还是有很多编程规范可以遵循的.也是本次给大家分享的重点内容.

对于编程规范代码风格的认知,很多人可能只停留 在第一阶段:知道编程规范有用,整个公司都要求使用驼峰 式命名等。而后面的还有什么可能就不太熟悉了,因此在后面的课程中我们将重点学习一下编程规范。如果喜欢或者对你有帮助的小伙伴,欢迎大家关注我的公众号:后厂程序员,并分享、点赞、在看 三连

更多推荐

什么样的代码才是优秀的代码