比如说之前爆漏洞的那个日志库,log4j 英文里边混数字,有的索性,有的不缩写,有的音译成数字(log 没缩写,4 是音译成数字,j 是缩写),感觉起名咋这么另类
举个其他语言的,像 Python 的 requests 库,scrapy ,bs4 ,pillow 等等 大多数都是一个单词搞定,最多也就是英文加一个数字,记着好记,见词知意,打字也好打,不用来回切输入法,还有 go 语言的一些比如:gjson ,gin ,echo ,gorm ,docker ,k8s ,k3s 等等,要么都是字母,最多也就是像 k3s 这种缩写后的字母和数字混用,不过 k8s 不缩写本来也就是一个词汇,而且 k8s 这种,基本看了一眼就很容易记住
反而是 Java 的的 log4j 这种起名很另类,缩写比较随意
1
Leviathann 2022-03-10 01:42:35 +08:00 14
显然还是 k8s i18n 更莫名其妙一点,这种睿智缩写所有人第一次见都要查一遍是什么吊东西
java 的问题在于喜欢用 j 指代 java ,看起来特别丑 |
2
westoy 2022-03-10 01:52:27 +08:00 4
用 J 代指 Java 是因为 Java 是商标,SUN 时期就打击滥用的
|
3
GuuJiang 2022-03-10 02:12:14 +08:00 via iPhone 26
4-for
2-to 这两个算是缩写届的共识了吧?遵循这个规则的缩写一抓一大把 |
4
boshok 2022-03-10 02:37:15 +08:00 4
OP 好像不太懂 E 文。
|
5
Mirage09 2022-03-10 02:49:40 +08:00
Log4j 我在心里默读都是 logging for j ,突然发现我读的是错的 lol
|
6
yeyang5211 2022-03-10 03:17:28 +08:00
log4j 解释了 再列一些你觉得怪的啊..
|
7
abysmalIQ 2022-03-10 04:20:42 +08:00
我不懂英文,但是我就不去学,我就爱对英文指手画脚
|
8
jorneyr 2022-03-10 07:03:33 +08:00 1
Anxn 这串字母才叫怪呢?
字典里查不到,拼音不是拼音、英文不是英文、俄语不是俄语,啥玩意? |
9
chendy 2022-03-10 07:51:33 +08:00
4 = for
j = java log4j = log for java 好像也没啥奇怪的啊 |
10
aaniao002 2022-03-10 08:16:40 +08:00 via Android
浓浓的咖喱味。
|
11
Goooooos 2022-03-10 08:16:46 +08:00 6
居然吐槽 log4j 奇怪,k8s,k3s 不奇怪。。。
https://docs.rancher.cn/docs/k3s/_index/#:~:text=%E4%B8%BA%E4%BB%80%E4%B9%88%E5%8F%ABK3s%3F,%E7%9A%84%E5%8D%95%E8%AF%8D%EF%BC%8C%E7%AE%80%E5%86%99%E4%B8%BAK3s%E3%80%82 ``` 为什么叫 K3s? 我们希望安装的 Kubernetes 在内存占用方面只是一半的大小。Kubernetes 是一个 10 个字母的单词,简写为 K8s 。所以,有 Kubernetes 一半大的东西就是一个 5 个字母的单词,简写为 K3s 。K3s 没有全称,也没有官方的发音。 ``` |
12
VeryZero 2022-03-10 08:38:04 +08:00 8
充分说明了什么叫偏见。
你例子里的 bs4 、k8s 、k3s 没问题,搁 Java 这就有问题了。。 请跟我读,log for j ,是不是舒服多了。 你想缩写成 l4j ?缩写的意义是单词太多或太长了,log 就 3 个字母有必要缩写吗?而且过度缩写只能让人增加困惑,如果是 l4j 别人怎么知道是 log4j 还是 lol4j ? 而且这不是 Java 原创的,我记得以前学 C/C++的时候,库里面一堆*2*这种函数。 |
13
Kontinue 2022-03-10 08:38:16 +08:00 5
作者想取啥名就啥名,这都可以拿出来引战,笑死
|
14
cweijan 2022-03-10 08:45:18 +08:00
@Leviathann i18n 还是没啥问题的, 全称太长了
|
15
comlewin 2022-03-10 08:47:43 +08:00
不明白你这吐槽有什么意义
k8s ,k3s ,bs4 你能理解 log4j 你就感觉有问题 你 Python 用习惯了 |
16
yinzhili 2022-03-10 08:54:59 +08:00
楼主还是太年轻,00 后?
没见过 C/C++的一些更不好理解的函数命名? |
17
hingbong 2022-03-10 08:59:03 +08:00 via Android
抛开我不会英语不讲,他就一点错没有吗
|
18
HardStone 2022-03-10 09:01:40 +08:00
每日一乐
|
20
banmuyutian 2022-03-10 09:05:08 +08:00 1
楼主竟然觉得 4=for 和 2=to 比起 i18n 和 k8s 这种还难理解吗,前者可不是 java 库的命名习惯而是一种英语习惯
|
21
yolee599 2022-03-10 09:07:31 +08:00 via Android
一个名字而已,别那么较真,而且 log4j 也有意义啊,类似的还有 log4cpp ,log4shell……一眼就知道是哪个平台的。
|
22
anxn OP @VeryZero k8s 这种看了一眼就能记住啊,还有 i18n ,i18n 我第一次看到时没百度看出来啥意思了;
反而是 log4j ,第一次见时就感觉很奇怪,还以为 4 是版本号之类的内容( log v4 j ),后来查了才知道啥意思; 其实我觉得叫 l4j 可行 |
23
Yafun 2022-03-10 09:17:02 +08:00
乌鱼子 log4j 一眼都比你说的 l4j 要看得明白它是干什么的吧..
|
24
darkengine 2022-03-10 09:18:23 +08:00
@anxn k8s 是因为 k 和 s 中间有 8 个字母,i18n 也是因为 i 和 n 中间有 18 个字母,log4j 的 4 是 for 的意思,简写成 l4j 不合理。
|
26
JamesMackerel 2022-03-10 09:26:09 +08:00 via iPhone 9
v2ex 这个站的名字取得真的是奇怪,v 是音译,2 也是音译,到了 ex 就变成了缩写,简直是另类。再看看人家论坛,nga ,铁血,虎扑,这些名字又好听,又短又好记。
|
27
xsqfjys 2022-03-10 09:27:56 +08:00
gjson 用 g 缩写没问题,log4j 用 j 缩写就奇怪
k8s ,k3s 莫名其妙的命名觉得好记,log4j 另类 我还能说啥 |
28
marcong95 2022-03-10 09:28:51 +08:00
@anxn #19 这属于幼儿园英语够用,但雅思 9 分都不够用的程度。日常不用英文,看到英文里面插个阿拉伯数字就直接用中文念出来的自然是难以理解的。
|
29
zhaohui318 2022-03-10 09:29:50 +08:00 3
I²C 才叫怪呢
|
30
superchijinpeng 2022-03-10 09:29:58 +08:00
@anxn 你是来搞笑的吧
|
31
yazinnnn 2022-03-10 09:30:23 +08:00
还有哪些库的名字奇怪?
|
32
b1t 2022-03-10 09:31:57 +08:00 via iPhone
楼主多学学英语吧(指非书面用语
|
34
nba2k9 2022-03-10 09:44:06 +08:00
多写代码,少思考
|
35
wqhui 2022-03-10 09:44:33 +08:00
log4j 看过它的含义是 log for java ,以后就懂了,跟别的缩写也没什么区别
|
36
4mYHime 2022-03-10 09:45:49 +08:00 1
那你看到我的昵称可能要挠头了。
|
37
msaionyc 2022-03-10 09:46:31 +08:00 via iPhone
i18n 第一次遇见不查就能直接理解是啥?
另外进一个圈子就入乡随俗,整个 java 圈子都能认同的东西到你这就不合理了吗,不要你觉得没遇见过就是奇怪,世界不是围绕你转的,要是所有人都像你这样以自我为中心,那网上天天就互喷呗 |
38
zapper 2022-03-10 09:50:41 +08:00
v2ex
|
39
lone1y 2022-03-10 09:50:46 +08:00
借楼问一下 c3p0 命名是怎么来的
|
40
itechnology 2022-03-10 09:53:30 +08:00
感觉你吐槽的很奇怪,一方面说字母+数字组合的 log4j 很奇怪,一方面又说同是字母+数字的 k8s 这种很容易记住。
反正至少对于我来说,log4j 是更容易理解,我之前第一眼看到 k8s 完全不知道这是啥意思,还得去百度一下 |
41
poplar89 2022-03-10 09:56:43 +08:00
这也值得花金币进来讨论吗?不会吧不会吧
|
42
anxn OP @itechnology 我的意思是 log4j 用了单词+数字+字母,是三种组合,而 k8s 是字母+数字,最多也就两种组合
|
43
ww940521 2022-03-10 10:02:19 +08:00
3=e
|
46
noobchen 2022-03-10 10:07:34 +08:00
我第一次看到亚马逊的云储存服务叫 s3 我也是一脸懵的,后来才知道是 Simple Storage Service 的简写,震惊还能这么简写的吗
|
47
ErnestSu 2022-03-10 10:08:35 +08:00
I2C 怎么读
|
48
daimubai 2022-03-10 10:11:30 +08:00
建议标题改成 吐槽 为啥 log4j 的起名都这么奇怪?
|
49
PopRain 2022-03-10 10:11:47 +08:00
说好听点是有质疑精神;说不好听点就是我看你不顺眼找茬
|
50
mango88 2022-03-10 10:11:53 +08:00
dom4j
|
51
anxn OP |
53
anxn OP |
54
chocotan 2022-03-10 10:20:15 +08:00
别人给你解释了,还在不停的怼人
总结:楼主就是故意找茬的不讲理的流氓 |
55
darkengine 2022-03-10 10:27:20 +08:00
@ErnestSu 在手机公司的时候,大家都读 埃方西
|
57
lyuuuu 2022-03-10 10:31:31 +08:00
每日一乐
|
58
knightdf 2022-03-10 10:38:57 +08:00
总结:我用的熟的就是正常名字,我不会的就是乱起名
|
59
thinkershare 2022-03-10 10:39:12 +08:00 1
因为 Java 的很多库起名就是莫名奇妙, 缺乏一致性. 楼主不用理会其它人, 很多人天生喜欢维护自己用的东西, 不管它是好还是坏, 通过肯定自己使用的东西来维护自己的自尊和认同是人的天性!
|
60
deplivesb 2022-03-10 10:43:07 +08:00
gjson 都知道 g 代表 golang 到 log4j 就不知道 就代表 Java ?看不懂 4 = for ,2 = to ?还看见 i18n 看不懂百度一下就懂了,那你看到 log4j 就不知道百度一下?还神 tm 的 4 是版本号,来搞笑的。
|
61
ttttturf 2022-03-10 10:44:25 +08:00
log4net log4cxx
|
62
shyling 2022-03-10 10:48:25 +08:00
anxn 啥意思
|
63
sinnosong1 2022-03-10 10:49:26 +08:00
C#还有一吨的 xxx4(2)n
|
64
BaseException 2022-03-10 10:56:57 +08:00
> 最多也就是英文加一个数字,记着好记,见词知意,打字也好打,不用来回切输入法,还有 go 语言的一些比如:gjson ,gin ,echo ,gorm ,docker ,k8s ,k3s 等等,要么都是字母
这完全合理好吧。不过很奇怪,字母和数字混用,为什么需要切换输入法?严谨点 ok 么 2 === to 4 === for 其他的很多数字,要么代表代数、版本,要么是首尾字母之间字母的数量。 个人觉得这些命名没有任何问题,如果我们是当时的先锋者,并不一定比他们命名的更好。 |
66
nekoneko 2022-03-10 11:25:17 +08:00
我一直不知道 `graal` 怎么念
|
67
anxn OP @BaseException 电脑不用切,我是指手机键盘,纯字母的话我中文输入法不用切就能打,加个数字我还得切英文或者切数字,中文下输字母->数字键盘->中文下输字母,或者是中文切到英文,再输字母->数字->字母
|
68
coer 2022-03-10 13:04:02 +08:00
引战专家
|
69
qq1340691923 2022-03-10 13:13:37 +08:00
你是不是没用过 log4go 包?
|
70
Konys 2022-03-10 13:14:02 +08:00 1
问一下 OP 你觉得 V2EX 别不别扭呢?
|
71
sprite82 2022-03-10 13:29:24 +08:00
真是国际驰名双标了😅
|
72
rulerstorm 2022-03-10 13:38:38 +08:00 via iPhone
无法接受,也不愿意尝试去理解跟自己直觉相左的意见。这是另一个蠢人的特征。
|
74
Jwyt 2022-03-10 13:40:48 +08:00
哈哈哈,楼主杠的挺可爱
|
75
tinyuu 2022-03-10 13:47:41 +08:00
《第一滴血》的第二部应该叫《第二滴血》
|
78
lower 2022-03-10 13:58:14 +08:00 1
我印象最深的库的名字就是:结巴分词……
很惟妙惟肖的把分词的那种特点体现出来,带点幽默感 |
79
9c04C5dO01Sw5DNL 2022-03-10 14:50:37 +08:00
419 听过没,双 11 听过没
|
80
cco 2022-03-10 15:53:43 +08:00 2
楼主不如说直白点,java 就是个垃圾。扯那些有的没的没啥用。
logforjava logforj log4j 你觉得那个舒服?第一个铁定要和 oracle 律师对线的。第二个更丑,反而第三个算是最佳方案。 当然,也可以改个名字:logback 。搞不懂作者同一个轮子造三遍。log4j - logback - log4j2 |
81
zzfer 2022-03-10 16:01:28 +08:00
你第一眼看 log4j ,难道不是一下是明白是 log 相关的吗?第一眼 k8s 谁知道是干啥的,从这方面来说,log4j 是好的缩写
|
82
uSy62nMkdH 2022-03-10 16:13:06 +08:00
@Goooooos 活久见系列
|
83
Bingchunmoli 2022-03-10 16:16:01 +08:00 via Android
对我而言 gjson 会比 jjson 更怪,我用 java 知道 j 可能是 java 的缩写,然后玩外敷游戏知道一些譬如 u 指 you 的缩写
|
84
ikas 2022-03-10 16:26:42 +08:00
xml4j log4j slf4j openxml4j launch4j neo4j icu4j deeplearning4j test4j dom4j rss4j
这些,哪个不比什么 k8s 这玩意清晰? |
85
tcpdump 2022-03-10 16:29:22 +08:00
xxl-job
|
86
yazinnnn 2022-03-10 16:36:54 +08:00 1
|
87
neptuno 2022-03-10 16:55:05 +08:00
楼主的规范应该是:要么是一个单词。要么是 3 个字以内的英文+字母(不论是否有含义)。
|
88
Bromine0x23 2022-03-10 16:59:25 +08:00
不如先定义一下另类的评判标准
|
89
orangie 2022-03-10 17:00:45 +08:00
Log4j 比 pillow 这种名字感觉更直观,不去看说明,谁能想到 pillow 是个图像处理库,更奇怪的是导入的时候叫 PIL 。
|
90
Amayadream 2022-03-10 17:01:10 +08:00
今日欢乐源泉,还就那个嘴硬 😅
|
91
fredli 2022-03-10 17:01:16 +08:00
也就是 logForJava 是好名字,楼主这么认为
|
92
wzcloud 2022-03-10 17:23:38 +08:00 1
完美诠释了什么叫做双标
|
93
snw 2022-03-10 18:10:04 +08:00 via Android
.NET 默默看着你们🐶
|
94
jackmod 2022-03-10 18:35:38 +08:00 1
出现 i18n 的地方,它的附近总是有一堆语言资源
而且这玩意历史悠久,8.3 文件名时代的缩写更疯狂 compmgmt.msc = computer management main.cpl = mouse and input |
95
lizhian 2022-03-10 21:06:22 +08:00
log4j 奇怪,k8s 不奇怪,你品,你细品
|
96
guyeu 2022-03-10 21:16:19 +08:00
一直 get 不到 x86_64 、aarch 的点。。。
|
98
interim 2022-03-11 00:59:05 +08:00
双标嘴硬现场,就差直接说 Java 就是垃圾了。
|
99
pdog18 2022-03-11 12:22:49 +08:00
歪个楼,我觉得 Android 里面的 okhttp 和 retrofit 的命名太酷了
|
100
liaojl 2022-03-11 13:06:44 +08:00 via iPhone
我猜 log4j 在楼主心里应该是念 log [si] 勾...
|