best365体育
  • 程序员:为什么几个月后我自己写的代码看不懂

    发布:51Code 时间: 2019-02-21 14:32

  • 写在开始的注释很重要,注释很重要,注释很重要,重要的事情说三遍。 程序员们大多都会有过这样的经历,就是要看别人写的代码。比如说公司有同事离职了,他的业务就需要有其它...

  • 写在开始的"注释很重要","注释很重要","注释很重要",重要的事情说三遍。

    程序员们大多都会有过这样的经历,就是要看别人写的代码。比如说公司有同事离职了,他的业务就需要有其它的小伙伴们给接下来继续维护。这对好多程序员来说是一种折磨,边看边骂,这写的是什么东西呀。相信好多人都有这种经历。

    那么为什么会出现这样一个局面呢,其实这里面就有很多讲究的地方了,如果不注意的话,不光是看不懂别人写的代码,即使是自己写的代码,几个月后你再去瞧瞧,你也会发现,咦,看不懂了呢。那么接下来就分析一下这种情况形成的原因及怎么去解决它们。

    形成这种局面的原因

    1.面向过程去写代码

    写代码前没有对代码进行设计,完全是随心所欲去实现。对自己的要求比较低,就是“能实现功能就可以了”这种心态去写代码。这样的代码将来是十分不好维护的,别说以后让别人来维护这个代码了,即使几个月后的自己也是非常困难能读懂自己的代码。

    2.代码没有注释

    代码注释是对读取代码有着非常好的辅助作用,是其他人能够快速的了解代码的功能,同时对自己以后回头来看自己的代码也是十分有帮助的。没有注释的代码就像深夜车灯坏了的汽车一样,虽然能行驶,但是你敢快开么?

    3.代码变量名称随意

    比如什么abc,temp这类变量,这是让谁看的,不根据代码的上下文谁也不知道这是啥意思,如果代码的上下文中全是类似这样的变量,我估计看代码的人会疯掉的。

    4.每个方法分工不明确

    一个方法中夹杂着多种功能,让人看了之后很难说出这个方法是干啥的,也不敢轻易去修改。

    不论为自己还是为别人,让以后自己能看懂自己的代码,还是为别人能看懂自己的代码,让自己不挨骂,那么就推荐以下几种方法来规范自己的代码,让别人或者是自己能够轻轻松松看懂自己的代码

    破除这种局面

    1.实现功能前先设计好代码

    最好是面向对象的方式编程,不论是java还是Python都能很好的应用面向对象的方式进行编程,设计好文件名,类名,以及方法名,不论是文件名,还是类名,方法名都要做到见名知意,要用标准的英文去表示,需要用多个英文表示就用驼峰标识来表达。让人看上去结构一目了然,代码看上去让人赏心悦目。

    2.注释写的尽量详细

    每个类,每个方法都要写明注释, 类的注释可以简明写这个类的主要功能,但是每个方法的注释尽量要写细了,注释一定要覆盖方法中所实现的所有功能,而不是只写其中一部分。看过系统级源码的程序员都知道,注释的行数是比代码的行数还要多的。这就是优秀的习惯,我们也要去学习、掌握。

    3.不要随便定义临时变量

    尽量不要定义一些临时的变量,如果十分必要定义时,最好是加上单行注释,让其他人知道你的意图。

    4.不要写太长的方法

    每个方法最好不要超过50行代码,如果过长了,可以考虑该方法的功能点是否可以再次拆分,最好是一个方法就实现单一的一个功能,这样的话方法的复用率也会提高的。

    5.不要写太“牛”的代码了

    有的程序员喜欢写非常有个性的代码,喜欢写一些别人很难看懂的代码,他认为这样才能显示出自己的“高水平”,这样就不是高水平了,只能说代码的可读性太差了,我们要写出傻瓜式代码,也就是说让很傻的程序员都能看懂,"傻瓜式代码" != "低性能代码”哈,这一点要分开。

    6.中国人就别写英文注释了

    好多国内的程序员给代码写注释用英文写,如果英文非常好的话写英文注释那当然是无可厚非,如果你英文不好,那么还是劝你别写英文注释了,你在折磨自己也折磨别人嘛。

    在刚开始的学习阶段大部分老师都会要求学生写注释,只是我们在后面的学习工作中,因为有些时候需要赶进度,会忽略了代码注释,代码注释不仅方便自己以后修改代码,还会使别人更好的理解你的代码。

    文章来源:https://blog.csdn.net/qq_41552245/article/details/86489132 
    上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8103),我们将立即处理。
  • 上一篇:Android开发中的面向切面编程AOP

    下一篇:Android Pie 引入 Keystore 新特性,安全防护再升级

网站导航
Copyright(C)51Code软件开发网 2003-2019 , 沪ICP备05003035号-6