拿阿里巴巴自己的编程规范扫了一下阿里巴巴的所有开源项目

2019-03-13 07:19:21 +08:00
 blindpirate

项目地址在这里

https://github.com/blindpirate/does-alibaba-follow-their-own-guidelines

想发起一个“帮阿里巴巴遵守阿里巴巴规范的活动”,给他们提 PR。

知乎问题: https://www.zhihu.com/question/55642203

24161 次点击
所在节点    Java
142 条回复
miniwade514
2019-03-13 10:49:50 +08:00
你帮阿里的项目做了一次代码规范检查,并且提了 PR,这是好事。
不过这规范才出来两年吧,你列的一些老项目存在不规范是符合预期的。如果说阿里有新的 Java 开源项目不遵守这个规范,那这个吐槽可能会更有力一点。
lrz0lrz
2019-03-13 10:50:38 +08:00
@PP #12
TL;DR

阿里的这个规范不过是小孩子一样的玩意儿,一点都不成熟
nifury
2019-03-13 10:51:12 +08:00
诶 private static final 有什么问题吗?作为常量要大写还是?
blindpirate
2019-03-13 10:51:28 +08:00
@miniwade514 第一个 PR 里的那个项目就是 p3c 规范本身的项目啊。。。
sniffles
2019-03-13 10:52:28 +08:00
@PP
"从您这样管理者的角度"并不是对人,是对岗位。不同位置的人考虑的事情是不同的,管理者,项目参与者,公司其他员工,外部使用者等等都不一样,我作为外部使用者,更关心的是后续使用和反馈这部分。至于内部奖赏,不关心。

至于广受外人诟病的 KPI 行为,从“项目无人维护是项目之后的事”大概就能知晓原因了。
blindpirate
2019-03-13 10:54:36 +08:00
@nifury JLS 6.1

The names of constants in interface types should be, and final variables of class types may conventionally be, a sequence of one or more words, acronyms, or abbreviations, all uppercase, with components separated by underscore "_" characters.
sniffles
2019-03-13 11:08:16 +08:00
大家并不质疑阿里开源的能力,也不质疑项目的价值。质疑的是生孩子不养孩子的行为。

某个项目只要跟 KPI 无关,后续一定没人维护,也不会有人跟着推进,这样的开源项目,一线的开发者是不敢用的。当然,公司管理者、项目参与者都是不关心这个的。

屁股决定脑袋罢了,从来都不是技术问题。
yhxx
2019-03-13 11:12:37 +08:00
每次都是看起来很有道理的一堆废话
站在制高点指点江山
一副教育晚辈的口气

还“此人不值得”
呵呵
ericgui
2019-03-13 11:13:45 +08:00
老铁, 以子之矛攻子之盾,不错
Silicon
2019-03-13 11:17:11 +08:00
看完回复后把讨论串里的 PP 给 block 掉了,清净……

遵守规范这个不管是新项目还是老项目都要做,只是说老项目可能没有维护动力了,更依靠外来维护者(比如动机)来开 PR (而非 issue )修复。新项目如果不遵守,自然是阿里的人主导修复才是。

PP 就在那揣度楼主动机。杀人诛心,很无耻。有兴趣的话可以 PM 或直接发你名字上来,我后续面试的时候如果能看到肯定会刷掉你,毕竟你自己都承认了连提交这种所谓“简单”的 PR 的技术知识都没有。
deepdark
2019-03-13 11:17:13 +08:00
代码不规范,看官两行泪
Silicon
2019-03-13 11:18:00 +08:00
@Silicon 上条回复打错了,外来维护者(比如楼主)
mimzy
2019-03-13 11:18:51 +08:00
我理解 @PP 的意思是不应该「以提供帮助为借口来施加嘲讽」,而阿里发布这套规范实际上是做了建设工作的。他认为这套规范还不完全成熟,阿里的项目不可能都遵循该规范,而且这样还可能少了进行试错、改进规范的可能。 @PP 更多的是站在通用( general )的角度上考虑这个问题的,和楼主的想法未必在一个节拍上,可能是大家职业不同的原因。

另外,@PP 感受到攻击应该是来自于「(Your) talk is cheap 」和「我提了 PR,你又做了什么的」这样的态度。我觉得可能由于 @PP 不是软件开发人员,所以比较无法接受 Linus 的「名言」。

做了些个人解读,不一定对,希望大家还是和和气气,投入到为开源事业添砖加瓦的道路上来。
xpresslink
2019-03-13 11:27:13 +08:00
脱离具体场景和环境讨论一些绝对规范是耍流氓。
阿里弹内的数据规范更变态,禁止使用触发器,存储过程,外键等等。不为什么,只是由于数据量级造成的技术需要。
你一个小应用拿阿里那套规范来套不是找虐么。
holy_sin
2019-03-13 11:37:06 +08:00
小伙还想去阿里吗
passerbytiny
2019-03-13 11:37:28 +08:00
@PP 你令人生厌
lynskylate
2019-03-13 11:41:12 +08:00
@blindpirate 给你知乎的回答也点了个赞。不过像 fastjson 这种内部依赖它特别多的,每次升级都会耗费很多个人日,不觉得官方会接受这种 pr
HongJay
2019-03-13 11:42:01 +08:00
@PP 支持一下
YouXia
2019-03-13 11:43:52 +08:00
有没人试过 Google 的 C++编程规范。。。
passerbytiny
2019-03-13 11:48:40 +08:00
楼主如果要证明「阿里的规范不是行业规范」,扫一下发布结果就够了。发起一个“帮阿里巴巴遵守阿里巴巴规范的活动”,这就画蛇添足了,除非你是真想这么干。

所谓的规范,是给人用的,不同的团队有不同的规范,把阿里的规范当成制定自己规范的参考,是一点没问题的,但是阿里想让规范成为行业规范,就相当有问题了。

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

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

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

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

© 2021 V2EX