什么样的代码是 maintainable 的?

2020-03-20 19:20:23 +08:00
 1oNflow

需要遵循哪些语言无关的习惯和语言特定的规范?

2370 次点击
所在节点    程序员
16 条回复
CEBBCAT
2020-03-20 19:36:23 +08:00
(我个人觉得这个议题 too 大 to 讨论)
Jirajine
2020-03-20 19:39:47 +08:00
如何编写无法维护的代码
https://coderlmn.github.io/frontEndCourse/unmaintainable.html

当你知道什么样的代码是 unmaintainable,反过来就是 maintainable。
nutting
2020-03-20 19:40:42 +08:00
当然是变量,方法不要怕名字长,取得有含义,这样注释可以不用写太细,就把重要逻辑,特殊的地方写写了
justfortest
2020-03-20 19:50:31 +08:00
没有代码
lithiumii
2020-03-20 19:51:31 +08:00
别的语言不一定,但特别长的 sql 肯定无法维护
justfortest
2020-03-20 19:52:41 +08:00
没有代码最好维护,代码越简洁短小越好维护,有文档有注释的代码可维护性好
CismonX
2020-03-20 19:56:15 +08:00
@lithiumii 深有体会,每当我负责维护离职同事写的数百行格式混乱的 ETL 时,都像吃了屎一样恶心。
mayx
2020-03-20 19:57:30 +08:00
我自己写的代码就是 unmaintainable 的
mightofcode
2020-03-20 20:05:11 +08:00
钱给到位
都是 maintainable 的
guyeu
2020-03-20 20:16:32 +08:00
能看懂的代码就是可维护的代码。
ericls
2020-03-20 22:17:22 +08:00
盈利的代码
sicauxeon
2020-03-21 00:20:10 +08:00
仔细维护的注释、有意义的方法和变量名、SOLID 六大原则、单测覆盖、控制抽象层次使得代码像文章那样结构严谨层次分明。

语言特定的话,最好 team 里大家都遵守同一份 best practice,例如阿里巴巴 Java 开发手册中那样的规约

Bob 大叔的《代码整洁之道》和 Martin Fowler 的《重构》是非常不错的参考
JerryCha
2020-03-21 00:28:34 +08:00
可以针对任意的需求变更在交付日期之前保证 8*5 工作制不加班的情况下完成
xcstream
2020-03-21 00:59:00 +08:00
新手不需要过多解释就能上手的
levelworm
2020-03-21 12:24:49 +08:00
@CismonX 自动格式化一下
EscYezi
2020-03-21 15:53:50 +08:00
写注释 写注释 写注释,快被没有注释的代码恶心死了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/654678

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX