![]() | 1 iintothewind 2024-06-22 04:31:03 +08:00 很多时候代码不需要注释, - 如果大部分方法都不超过三分之二屏幕,而且没多少成员变量,局部变量,这说明代码维护的还不错, 这种代码其实很好明白意思。 - 如果方法超级长, 超过两个屏幕长度。 而且是在维护 3 个以上成员变量, 频繁修改它们的状态,而且局部变量特别多, 频繁修改它们的状态。 毫无疑问, 这是烂代码, 不一定是一个人写的, 很可能是历史悠久的屎山代码,这种代码需要注释。 但屎山代码往往不是一个人维护的, 所以没人愿意负责,估计也没人愿意多写点注释。 即便偶尔写了注释, 如果逻辑改了, 注释又没同步更新, 那只能误导人,还不如没有。 |
![]() | 2 iClass 2024-06-22 07:23:18 +08:00 via Android Ai 来帮您 |
![]() | 3 bkmi 2024-06-22 08:17:09 +08:00 via Android 我觉得解释代码本身的注释没有太大意义,函数名,方法名通常就够了,除非是那些花哨的用法; 重要的是解释义务意图,上下文的一些关联,隐含的逻辑 |
![]() | 4 UXha45veSNpWCwZR 2024-06-22 08:35:52 +08:00 via iPhone |
![]() | 5 chendy 2024-06-22 08:43:36 +08:00 除非是复杂的算法,或者是为了性能之类的考虑做了某些诡异操作,否则代码本身不需要注释 相比于‘这段代码做了什么’,更重要的是‘解释为什么这么做’ |
6 geminikingfall 2024-06-22 09:09:58 +08:00 防御性编程 |
![]() | 7 Perry 2024-06-22 09:10:31 +08:00 via iPhone 不是普遍现象,但肯定是经验少的程序员的正常现象。 |
![]() | 8 Perry 2024-06-22 09:11:26 +08:00 via iPhone 要真防御性编程,连注释都可以懒得写,或者写好几行但也说了等于白说 |
9 drymonfidelia OP @Perry 之前负责这个项目的同事十年经验,给 React 提过好几个 PR 全部被合并了 |
![]() | 10 InsideSeed 2024-06-22 15:22:54 +08:00 确实好的代码语义性强很容易方便其他开发者阅读和维护,但如果涉及到业务逻辑,那还是得有文档。 |
11 tomari 2024-06-23 17:11:43 +08:00 GPT 一大用处就是帮忙写 function 的注释() |
12 drymonfidelia OP @tomari 公司禁止 copilot 类直接上传代码的 AI 插件或者直接把代码贴给 GPT |