1
nexo 2023-01-22 13:13:15 +08:00 via Android 1
ID URL
|
2
pdog18 2023-01-22 13:14:39 +08:00
似乎 ID 是合理的
|
3
iseki 2023-01-22 13:17:13 +08:00 via Android 2
少于三个字母我选 ID ,三个字母开始我宁可 Url
|
4
SuperMild 2023-01-22 13:19:22 +08:00 3
最标准的是 Id ,URL ,但实际操作没必要太计较。
|
5
pupboss 2023-01-22 13:22:55 +08:00 2
Id 是一个单词 identity 的缩写,url 是 uniform resource locator 缩写,4 楼说的就是标准答案了
|
6
hahadaxigua834 2023-01-22 13:28:16 +08:00 6
Words in names that are initialisms or acronyms (e.g., URL and NATO) should have the same case. URL should appear as URL or url (as in urlPony, or URLPony), never as Url. This also applies to ID when it is short for “identifier”; write appID instead of appId.
https://google.github.io/styleguide/go/decisions#variable-names |
7
hst001 2023-01-22 13:37:57 +08:00
ID 和 URL 都是缩写,通常情况下要么全大写要么全小写
|
8
gowl 2023-01-22 13:49:49 +08:00
按微软的命名规则的话是 ID 和 Url 。
|
9
SuperMild 2023-01-22 14:42:37 +08:00
@hahadaxigua834 这个竟然是 Google 的 Go 语言风格,与 Go 自己的标准库不一样啊。
比如 https://pkg.go.dev/database/sql#Result 用了 LastInsertId() 以及这里 https://pkg.go.dev/os/user 用了 UnknownUserIdError 和 LookupId() 等 |
10
hahadaxigua834 2023-01-22 15:09:42 +08:00
|
11
HAWCat 2023-01-22 16:27:58 +08:00 via iPhone
自己统一了就行,各家都不一样的
|
12
securityCoding 2023-01-22 18:06:10 +08:00 via Android
golanglint-ci 规则强制 ID
|
13
duke807 2023-01-22 18:56:39 +08:00 via Android
get_usr_id()
get_xxx_url() |
14
sifeizhai2020 2023-01-22 18:57:52 +08:00
Now lowercase everything (including acronyms), then uppercase only the first character of:
- ... each word, to yield upper camel case, or - ... each word except the first, to yield lower camel case https://google.github.io/styleguide/javaguide.html#s5.3-camel-case |
15
Jooooooooo 2023-01-22 19:31:02 +08:00
ID 是 go 的风格, 写 java 的从来都是 Id
|
16
snw 2023-01-22 19:34:38 +08:00 via Android 1
我选 getUserId 和 getXxxUrl. 对于这种很常见的缩写单词,就当它普通单词对待,不然有时出现在函数名中间时维持同样的原则非常难受:getIDAsync, getURLList
|
18
Knowazz 2023-01-22 20:17:58 +08:00
感觉后者比较顺眼
|
20
qeqv 2023-01-22 21:19:10 +08:00
这个问题也是困扰过我,现在我选择 Id Url
|
21
olaloong 2023-01-22 21:29:17 +08:00 via Android
我们的傻瓜 checkstyle 定死了不允许连续出现两个大写字母,so...
|
22
makelove 2023-01-22 21:50:10 +08:00
建议无脑算法,永远只大写第一个
|
23
Mbb38C3HtyZydTt7 2023-01-22 22:03:37 +08:00
get_user_id
|
24
ChefIsAwesome 2023-01-22 22:49:38 +08:00
按语法,缩写应该大写。但是现实中,很多不大写的情况。
以 url 举例,path 分大小写,协议和域名不分大小写。HTTPS://v2ex.COM 这地址你看着怪不怪。FBI 应该是全大写。FBI 的网址,只能是全小写的 fbi.gov 。 再例如,km/h 都是小写。 写驼峰,就别管缩写大写的问题。 |
25
WasteNya 2023-01-23 04:10:08 +08:00 via Android 4
gEtUsErId
|
26
caixiangyu17 2023-01-23 08:46:20 +08:00
主要命名的话,还是 Id, Url 比较舒服
看到两个大写字母挨着的变量名难受 |
28
Rocketer 2023-01-23 09:48:53 +08:00 via iPhone
之前遇到过一个前端问题,我们写的程序( js )是驼峰式命名,但框架映射到 html 和 css 时会使用下划线式的命名。
具体细节记不清了,但反正它每遇到一个大写字母,就会转成下划线加小写的形式,比如我写 imageURL ,它实际操作的是 html 里 image_u_r_l 这个属性,所以要求我们必须用 imageUrl 这样的命名,才能操作到预期的 image_url 这个属性。 这个框架还是微软出的,所以我觉得为了保证各种命名规则的可转换性,还是应该用 getId ,getUrl |
29
popil1987 2023-01-23 10:08:46 +08:00
ID 的情况还和 URL 不一样,ID 是一个单词的缩写,似乎 getId 比较合适。URL 是三个单词的缩写,似乎 getURL 比较合适
|
30
kkstart 2023-01-23 10:23:11 +08:00
驼峰和下划线互转的话,是:大写字母 = 下划线+小写
getID get_i_d getURL get_u_r_l 你再看看,就知道怎么抉择 |
31
tairan2006 2023-01-23 11:17:41 +08:00
golang 是 ID ,java 就 Id ,习惯就好
|
32
zealinux 2023-01-23 12:08:46 +08:00
get_user_id
get_xxx_url 清清爽爽,没有你的烦恼 |
34
gowl 2023-01-23 13:38:59 +08:00
纠正:
> 按微软的命名规则的话是 ID 和 Url 。 应为: 按微软的命名规则的话是 Id 和 Url 。 |
35
gowl 2023-01-23 13:42:15 +08:00
Id 是 Id 不是 ID ;但 IO 是 IO 而不是 Io ,区别在于 Id 是「一个词的缩略形式」,而 IO 是「首字母缩略词」。
|
36
leonshaw 2023-01-23 13:58:49 +08:00
维基百科 identifier 上缩写都是 ID ,没看到 Id
|
37
Pastsong 2023-01-23 15:32:20 +08:00 via Android
getUrlForIosAppId
|
38
mejee 2023-01-23 15:37:52 +08:00
怎么舒服怎么来,别人看得清晰比较重要,我选择 Id ,Url
|
39
2NUT 2023-01-23 17:46:41 +08:00
魔怔了
|
40
snw 2023-01-23 18:49:20 +08:00 via Android
我认为为了可读性和统一性,适当牺牲语法上的正确性是完全值得的,只要大家看得懂。毕竟我们是命名函数名和变量,不是参加英语考试。
举个 PowerPivot 的例子:我的销售数据表里有 order 列和 sale 列,显然 sale 从语义上来说是错误的,应该是 sales 。但为了不和度量重名冲突,所以列名用单数形式,度量用复数形式,比如 Sales:=SUM(data[sale]) 微软官方示例用不同词组也是可以的,就是比较啰嗦: Total Sales:=SUM(Sales[SalesAmount]) |
41
WilliamLin 2023-01-24 00:07:14 +08:00 via iPhone
我用 Id Url ,不想按英语规则来,全部弄简单化,例如 children 直接写成 childlist ,对接方便
|