• 请不要在回答技术问题时复制粘贴 AI 生成的内容
wuzhouhui
V2EX  ›  程序员

同事写的注释实在太多余了

  •  2
     
  •   wuzhouhui · Aug 23, 2020 · 20056 views
    This topic created in 2264 days ago, the information mentioned may be changed or developed.
    例如声明变量和函数之前, 都要写一行注释

    // 声明变量
    // 声明函数

    大家都是成年人, 哪有人不知道这是在声明, 至于写个注释吗? 放锁写个注释, 解锁再写个注释. 都三十好几的人了, 也不看看其他人是怎么写代码的, 都说了不要写多余的注释, 还不肯改
    103 replies  •  2020-08-27 15:08:19 +08:00
    1  2  
    ❮ ❯
    constexpr
    constexpr
    Aug 23, 2020 via Android
    1
    强迫症吧
    kaiki
    kaiki
    Aug 23, 2020❤️10
    2
    真没必要拿出来说吧,愿意把注释写成说明书的人真不多了。
    democracier
    democracier
    Aug 23, 2020 via Android❤️93
    3
    多了嫌冗余,少了嫌不清晰 真难伺候
    inwar
    inwar
    Aug 23, 2020 via Android❤️1
    4
    ide 自动生成的吧
    chinvo
    chinvo
    Aug 23, 2020 via iPhone❤️14
    5
    这种就明显是“没意义的注释”

    注释应该是对难懂逻辑的说明
    qsnow6
    qsnow6
    Aug 23, 2020
    6
    愿意写就算及格了,至于写的是否足够简洁、易懂,要经过长期刻意练习才能做到。
    Jooooooooo
    Jooooooooo
    Aug 23, 2020
    7
    有注释总是比没有好
    Procumbens
    Procumbens
    Aug 23, 2020❤️2
    8
    https://www.reddit.com/r/ProgrammerHumor/comments/i4v6b2/comments/
    莫名想到了之前 Reddit 看到的 ProgrammerHumor 里的一则帖子 hhh
    leafre
    leafre
    Aug 23, 2020
    9
    不写可以了吧
    finab
    finab
    Aug 23, 2020
    10
    我的配色注释是灰色,代码颜色是亮色系。
    我阅读代码时基本感觉不到注释的存在,写啥都行,推荐试试
    Vegetable
    Vegetable
    Aug 23, 2020
    11
    为了注释而注释,脑子不清楚的表现。
    nicevar
    nicevar
    Aug 23, 2020
    12
    如果有 sonar 检查,这样是很正常的操作
    CEBBCAT
    CEBBCAT
    Aug 23, 2020 via Android❤️11
    13
    https://www.v2ex.com/t/661193
    https://www.v2ex.com/t/661196
    https://www.v2ex.com/t/700675

    从节点的选择中,确实能感受得到楼主对真理的追求
    anguiao
    anguiao
    Aug 23, 2020 via Android
    14
    感觉我遇到的同事,大部分都是以下两种:
    1.无用注释一堆,代码该看不懂的还是看不懂;
    2.基本上没几句注释,但代码条理还算清晰,耐心看还算能看懂。
    代码写得好、注释又清晰的,是真的少,可能我身边的人都太菜了吧。
    wangzp0303
    wangzp0303
    Aug 23, 2020 via Android
    15
    才知道还有个“签证”区,话说代码相关的讨论为啥放“签证”区
    rouzip
    rouzip
    Aug 23, 2020❤️3
    16
    每个人状态不同,能力不同对于同段代码的理解也不同,需要看懂的时间也不同。注释不仅仅是规范化输入输出,更是清晰地告诉后来人,这个函数是什么,预期结果如何等等,让后人更加快速地了解这个函数,如果每个人都是 super star 级别的,全程跟项目,注释作用可能不明显,但是对于新人或者刚接触某个大型工程,可以让别人更好上手,省去大量时间看代码,跳逻辑。刚入行的实习新人,欢迎大家指正。
    louishwh
    louishwh
    Aug 23, 2020 via iPhone
    17
    总比一行不写的强,有的不加注释自己写的都看不懂
    laike9m
    laike9m
    Aug 23, 2020 via Android❤️1
    18
    不要光说,代码放出来看一下就知道多不多余了。一般而言如果确实只写了你说的这几个字,那确实多余。
    lithbitren
    lithbitren
    Aug 23, 2020
    19
    声明变量是挺多余的

    声明 XX 变量有时候还是需要,光靠变量名很多时候不能一眼推断出是干啥的变量
    lzlee
    lzlee
    Aug 23, 2020
    20
    所以这个人代码质量怎么样
    他的注释影到底影响了什么
    你给他提了明确的文档标准吗
    fffang
    fffang
    Aug 23, 2020
    21
    @lithbitren 一般不是直接写 //XX (用途)吗,真有人会写“声明”“变量”吗?
    lithbitren
    lithbitren
    Aug 23, 2020
    22
    @fffang 变量还行,反正写上用途就行,多写几个字把句子补完也无妨,函数光写用途关键字有时候也搞不清楚
    gdzzzyyy
    gdzzzyyy
    Aug 23, 2020
    23
    我觉得挺好的。又不耽误你什么事情。个人习惯而已,而且这个习惯还是好习惯。
    wellsc
    wellsc
    Aug 23, 2020 via iPhone
    24
    等接手没有注释的代码,加班加到吐,你就不会这么说了
    Maboroshii
    Maboroshii
    Aug 23, 2020
    25
    针对这一点来说,的确是多余注释
    imn1
    imn1
    Aug 23, 2020
    26
    多余,是因为他的变量命名规范

    如果
    a=
    a1=
    a2=
    ……
    估计你也坐不住,要动手加注释
    taogen
    taogen
    Aug 23, 2020
    27
    无可厚非。

    他愿意加是他的事,无论是充满毫无意义的注释,还是没有任何注释,代码要看还是得看。
    tinycold
    tinycold
    Aug 23, 2020 via Android❤️3
    28
    上 V 站的吐槽这么铿锵有力,不知道你有没有当面给到他 feedback,在 code review 中,或是私底下。

    如果有,那我支持你。
    如果没有,我觉得就本质上大家都没啥区别,就是领工资混日子罢了,你对他的吐槽也不是出于对"高可读"代码的追求。
    YaakovZiv
    YaakovZiv
    Aug 23, 2020
    29
    @imn1 太真实了,如果是解释一下变量命名给谁用的,我觉得可以理解。
    binjoo
    binjoo
    Aug 23, 2020❤️7
    30
    程序员两个不喜欢:

    1. 不喜欢写注释;
    2. 不喜欢别人不写注释;
    aliveyang
    aliveyang
    Aug 23, 2020
    31
    可能他是先写注释,理清思路再写代码吧
    aliveyang
    aliveyang
    Aug 23, 2020
    32
    应该是个习惯问题
    zhenghuiy
    zhenghuiy
    Aug 23, 2020 via iPhone❤️6
    33
    楼主就不该来这里吐槽,看到那些评论是不是更生气了。🤣

    同时也吐槽,楼上几个连客观的对错都不分了么。。明显无意义的注释都能杠一下「等碰到不写注释的就有你受的了」—— 生活虽苦但自己对于优劣的标准不能放弃呀。
    joiejia
    joiejia
    Aug 23, 2020
    35
    代码也不一定都是给同行看的。我做 seo 的,不会写代码,只看得懂工作相关部分,有时候看网页代码还能不能再优化精简时,有注释是能帮到我的。
    windfarer
    windfarer
    Aug 23, 2020 via Android
    36
    你见过用日语写注释的就不会有这么多抱怨了
    uiosun
    uiosun
    Aug 23, 2020
    37
    @chinvo

    “难懂逻辑”——这四个字几乎概括了从萌新到大牛,一路上所有的逻辑,毕竟与其你按自己水准来断定“难懂逻辑”,不如写全点。

    就怕这个哥们一天代码 50 行,剩下时间都顾着写逻辑了……
    Felldeadbird
    Felldeadbird
    Aug 23, 2020 via iPhone
    38
    有可能是 ide 自动生成。
    Seanfuck
    Seanfuck
    Aug 23, 2020 via iPhone
    39
    变量名和函数名用英文写清楚,就不需要注释,写了多余
    guanhui07
    guanhui07
    Aug 23, 2020
    40
    程序员两个不喜欢:

    1. 不喜欢写注释;
    2. 不喜欢别人不写注释;
    watzds
    watzds
    Aug 23, 2020 via Android
    41
    过犹不及,这也是坏习惯,不是什么至少比不写好

    精力花在这地方,代码命名不知道怎么样
    LifStge
    LifStge
    Aug 23, 2020
    42
    @taogen 确实啊 不过也不是完全无意义的事情啊 在大量代码中 一眼中文 看出这个代码是干嘛的 不是更轻松么 具体不知道什么语言的代码 有时候还是很必要的 这样一眼看出来 肯定要比 虽然是特别简单的 但是还是要分析下上下代码才能看出来具体的意义强一些啊
    还有就是习惯问题 很多时候用注释做下比较简单的分割 具体也没啥意义 随手就把当下的简单的写上也无可厚非

    咋那么多 动不动就上纲上线的呢 是不是不符合自己规范的代码都是 XXXX 呢.....
    LifStge
    LifStge
    Aug 23, 2020
    43
    @wangzp0303 哈哈 确实 签证区 好生奇怪
    fengyj
    fengyj
    Aug 23, 2020
    44
    go 语言规范要求只要是 export 的变量和函数都写注释,这么看来怕不是所有 gopher 都表示无辜。

    突然想起来,vscode 的 go 扩展,如果不写注释,会黄色警告⚠。
    zengguibo
    zengguibo
    Aug 23, 2020
    45
    毕业后去了一家公司,里面的代码都没有注释,问了原来的员工,答:代码就是最好的注释
    kaedea
    kaedea
    Aug 23, 2020 via Android❤️1
    46
    公有 API 跟 算法过程需要写注释,其他地方通过 CoseStyle 进行语义注释。
    Girlphobia
    Girlphobia
    Aug 23, 2020 via Android❤️1
    47
    @CEBBCAT 遇到错误节点的帖子可以向管理员举报。
    dvaknheo
    dvaknheo
    Aug 23, 2020
    48
    @zengguibo 只要这代码不刁钻。
    读代码,写得怎么样都能忍,只要关系不复杂。不能忍的三种

    这东西从哪里冒出来的。
    改了这地方,其他地方崩了
    改了其他地方,这地方崩了。

    就以我熟悉的 PHP 来说吧。
    $object->getFooByCache(); 搜一下,没引用,咔嚓了。

    等等,怎么 $object->foo 报错了。 原来是魔术调用, $object->foo <=> $object->ByCache
    52coder
    52coder
    Aug 23, 2020
    49
    这种还好,你见过一个 3000 多行的代码,一行注释都没有的吗?真的日了狗了。
    dustinth
    dustinth
    Aug 23, 2020
    50
    不好的注释不如不注释. 并不是比没有注释强.
    Takamine
    Takamine
    Aug 23, 2020
    51
    诚然,注释是要做到简洁准确。
    如果说极端一点的话,我宁愿看注释内容有效,但可能有很多多余注释的代码;也不愿意看一堆吹嘘所谓的代码自述性的人写的几乎没注释,然后就算是去问写代码的,结果自己都不知道自己当时为什么要这么写的代码。
    毕竟真的要接手的时候,看着这前面搞了一波抽象之后又逻辑嵌套很深的代码,有注释是真的节约很多时间,要是当初写这代码的人都找不到了,那有注释就真是很良心了。
    optional
    optional
    Aug 23, 2020
    52
    大部分的注释都是多余的。 命名准确就是最好的注释。
    caola
    caola
    Aug 24, 2020
    53
    @wuzhouhui 注释多不可怕,可怕的是一个都没注释的,很多开源软件都是非常多注释的,比如:jquery
    aureole999
    aureole999
    Aug 24, 2020
    54
    注释一般写的是目的,为什么要这么干。而不是把代码翻译成文字。
    Mutoo
    Mutoo
    Aug 24, 2020
    55
    DOs:

    // Describe the requirement

    // How and why doing this

    // Special/Edge Cases

    // Helpful Resource: https://example.com

    /*
    * Docstring
    */

    DONTs

    // This is comment

    // This is a variable
    var foo = bar;

    // if condition do that
    if(condition) {
    // that
    }
    babyblue
    babyblue
    Aug 24, 2020 via Android
    56
    除非你是他的上级;既然你说过一遍就不要再说了 ,除了破坏同事关系起不到任何作用,不影响代码运行就行了,你有强迫症也得给我憋回去
    Goooler
    Goooler
    Aug 24, 2020
    57
    好的命名本身就是好的注释,你说的这种完全就是废话呗
    jiyingze
    jiyingze
    Aug 24, 2020 via iPhone
    58
    java 代码。我见过给 setget 注释的。正常业务代码不写注释
    Daniel17
    Daniel17
    Aug 24, 2020
    59
    唉,我现在看代码就很烦,都是 // 调用开始, // 调用结束
    xiaomingVTEX
    xiaomingVTEX
    Aug 24, 2020
    60
    不作讨论, 推荐个文章给大家看看 [Stop Writing Code Comments]( https://blog.usejournal.com/stop-writing-code-comments-28fef5272752) (译文可搜 停止代码注释) , 或许对大家有帮助
    NotFoundEgg
    NotFoundEgg
    Aug 24, 2020
    61
    写也不行 不写也不行
    他写这种废话注释 大概率写别的代码也会写注释
    总好过那些一点注释不写的人
    kemikemian
    kemikemian
    Aug 24, 2020
    62
    碍着你写 bug 了?
    我反正觉得这种人很牛
    l00t
    l00t
    Aug 24, 2020
    63
    @imn1 #26 然后他加的注释是: 声明变量 a, 声明变量 a1, 声明变量 a2……
    quan01994
    quan01994
    Aug 24, 2020
    64
    注释还是多写一写。。业务流程一大堆的时候,你就知道注释有多么重要,当然可有可无的,也不会影响什么,
    只要不写错误的注释就行。
    12tall
    12tall
    Aug 24, 2020
    65
    如果有很多变量放一起声明,我倒是很喜欢你同事的这种注释
    Vitta
    Vitta
    Aug 24, 2020 via iPhone
    66
    我自己的代码我自己都看不懂,包括变量
    vipppppp
    vipppppp
    Aug 24, 2020❤️2
    67
    不明白喷楼主的人

    无意义的东西只会增加人的阅读量,当垃圾信息越来越多,你就会不耐烦,然后可能会忽略掉重要的东西

    每个人的精力和时间都有限,不要产生垃圾信息,也不要让人阅读垃圾信息。
    bnm965321
    bnm965321
    Aug 24, 2020
    68
    这种注释是多余的,绝不是有了比没有好,因为如果要修改代码也要去修改这些注释,就会带来多余的心智负担
    kiroter
    kiroter
    Aug 24, 2020❤️1
    69
    这是老年人刚入门吧, 还没习惯。习惯就好了。
    shuigui
    shuigui
    Aug 24, 2020
    70
    是不是什么基于人工智障的插件自动生成的?
    ytll21
    ytll21
    Aug 24, 2020
    71
    写出这样注释的程序员,毫无疑问,就是水平还停留在初级阶段,需要多读书,多看别人的代码来提高自己。可以参考这篇文章,对号入座。https://www.lovelywindy.club/2020/08/24/jie-du-java-by-comparison-become-a-java-craftsman-in-70-examples/
    fx777
    fx777
    Aug 24, 2020❤️2
    72
    我们公司 代码里边 一堆人名。。
    这些人名就是 各位产品经理的名字。。例如“2019 年 12 月 12 日 xx 产品说 这里要删掉 xxxx ”
    securityCoding
    securityCoding
    Aug 24, 2020
    73
    @zengguibo 英文不是母语,经常词不达意的,代码即文档很难很难做到,Apache 的开源项目注释比源码还多呢
    tiedan
    tiedan
    Aug 24, 2020
    74
    注释是解释的是用图,不是代码的翻译。 要是代码里充满了,“声明了 xx 变量”,“这里循环 XX 次,然后取 XX 字段累和”,这种注释不如不写。
    jasonding
    jasonding
    Aug 24, 2020
    75
    有些人都不看注释,只管问。哪怕注释写的再清楚,甚至连数据库表映射模型都得挨个问,因为注释看不懂
    azkaban
    azkaban
    Aug 24, 2020
    76
    难道是按行算钱
    goldenCold
    goldenCold
    Aug 24, 2020
    77
    以前接手过一个项目,写的变量名是 a;b;c 这种无意义的名字,然后有注释说明 a;b;c 是什么意思。后来有人接手写了 d;e;f,轮到我改的时候,发现注释已经和变量对应不上了。只能一行行的看代码猜变量意思
    注释只是辅助作用,有最好。 主要还是代码一定要语义化,命名清晰
    edk24
    edk24
    Aug 24, 2020
    78
    whitev2
    whitev2
    Aug 24, 2020
    79
    @jiyingze #58 checkstyle 要求每个方法都要有注释,然后就用插件给每个方法生成注释,为了过检查而加的
    RadishWind
    RadishWind
    Aug 24, 2020
    80
    我也碰到过,直接回怼这么写的同学一句:“有空这么写注释,不如把变量名写的名白点”
    dodoa
    dodoa
    Aug 24, 2020
    81
    不瞒你说,我们代码里想看到一行注释真是太难了。。两个极端啊这是
    chenyu8674
    chenyu8674
    Aug 24, 2020
    82
    // 这是我的回帖
    zhady009
    zhady009
    Aug 24, 2020
    83
    变量上的注释应该要说明是干嘛用的 而不是 // 声明变量
    coderunI
    coderunI
    Aug 24, 2020
    84
    写个注释,这个也得拿出来说说吗?做你同时太难了。
    kingwl
    kingwl
    Aug 24, 2020
    85
    ![comments]( )
    tachikomachann
    tachikomachann
    Aug 24, 2020 via Android
    86
    不知道原来代码是怎么样的,就我的经验,这么写的人有的时候是强迫症,让大段的代码看起来有分块的感觉,可以第一眼找到某个“块”
    OHyn
    OHyn
    Aug 24, 2020 via Android
    87
    不愿意写注释的,代码质量统一算作不及格,有愿意写的算是对得起工作了。我这有一个同事,从不写注释,现在他自己已经不知道他写的代码会怎么运行了。
    mxT52CRuqR6o5
    mxT52CRuqR6o5
    Aug 24, 2020 via Android
    88
    这是有 78 个人认为这种注释是合理的?
    cv1024
    cv1024
    Aug 24, 2020
    89
    可能是在凑代码行吧。。
    xuewuchen
    xuewuchen
    Aug 24, 2020
    90
    注释这东西贵精不贵多,注释一些逻辑问题和函数实现意义啥的就行了。。当然我不会鄙视楼主说的写无用注释的
    Mac
    Mac
    Aug 24, 2020 via Android
    91
    注释不是写给你看的
    newtype0092
    newtype0092
    Aug 24, 2020❤️2
    92
    写这种注释不是因为对自己要求严格处处注释,单纯是因为这样可以不动脑子随便复制粘贴。
    这种人真的需要写注释的逻辑往往不会去管,因为需要动脑子。

    楼上某些人,明显就是不知道要动脑子的,要是全写这种注释有个二极管就控制了,干嘛养你个吃白饭的?
    luxinfl
    luxinfl
    Aug 24, 2020
    93
    我都是写整段注释+逻辑判断在方法名上面。代码里面偶尔带上判断条件注释
    newtype0092
    newtype0092
    Aug 24, 2020
    94
    @edk24 #78

    打开链接,从上往下看
    排版舒适
    段落合理
    通俗易懂
    由浅入深
    好文章啊好文章

    最后
    威尔史密斯!
    我是谁?我在哪?
    shm7
    shm7
    Aug 24, 2020
    95
    毕竟写代码是一门 Art,就像画画,小学生想象力丰富一点也是可以理解的,同理;
    icenine
    icenine
    Aug 24, 2020
    96
    这明摆着是 IDE 自动生成懒得删的,瞧给你们嘚瑟的,可算逮着个自己会的
    1534853288
    1534853288
    Aug 24, 2020
    97
    我们这边要求每一个变量和函数都要注释
    wenlele
    wenlele
    Aug 24, 2020
    98
    你可以做一个 code style rule 禁掉这种注释=。=
    wty
    wty
    Aug 24, 2020 via Android
    99
    之前有个小学弟,把我代码里面的变量名全丢翻译软件里面翻译成中文然后写在注释里面,,,,想半天不知道他为啥这么干,后来跟我说他看不懂英文🤣
    a1562619919
    a1562619919
    Aug 24, 2020 via Android
    100
    如果没有形成注释规定,这样做“无可厚非”
    1  2  
    ❮ ❯
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4668 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 237ms · UTC 03:50 · PVG 11:50 · LAX 19:50 · JFK 22:50
    ♥ Do have faith in what you're doing.