PHP 用长命名还是短命名好?

2015-12-14 10:16:01 +08:00
 bridge45

[代码都是缩写版命名]
公司 PHP 的代码有十多年的历史了,平常做的维护工作居多.所以大多数情况下使用 VIM 来工作.因为改动小,调试等都很方便.所见代码命名基本上都是缩写精简版的.
[习惯于长命名]
然大学期间习惯用 IDE,命名习惯是类似 java 的"长命名"方式.然后最近新起项目,许多类方法就是这种"长命名",这个在 IDE 自动提示的帮助下,基本上没有什么障碍.
[大家不喜欢长命名]
但是当组内其他成员一起工作,用 vim 操作的时候,这个长命名就很不讨人喜欢了,因为大家基本上没有装 vim 的代码提示,而且代码提示几乎都是"吃内存"大户.
[新项目长短命名纠结]
但是开发新项目,对于 VIM 只会常见的一些操作者来说,个人感觉 IDE 效率会高很多,就像 java 工作者一样,IDE 的提示会让其效率倍增.而我们的 PHP 代码直接在开发机上面,大家都是一个终端连接上去 VIM 操作.这个时候长命名不如缩写短命名方便

大家对于这个问题怎么看?

3011 次点击
所在节点    问与答
27 条回复
DT27
2015-12-14 10:32:05 +08:00
这个没有好坏吧,只是不同人的不同喜欢问题。既然其他人都是一样短的,为什么你要搞特殊呢。。
kslr
2015-12-14 10:32:52 +08:00
长命名感觉更方便,至于内存是在开玩笑吧
还是有人在抵制你?
tabris17
2015-12-14 10:38:06 +08:00
没代码自动完成还要 IDE 干嘛

另外直接在开发机上编辑代码的方式也太令人销魂了
movtoy
2015-12-14 10:39:00 +08:00
长好,一看到代码就猜到大概是干吗的。

代码是用来看的。
codingpp
2015-12-14 10:44:49 +08:00
vim 用户觉得没有自动补全不方便,是他们的事,这点问题都解决不了还写什么程序
barbery
2015-12-14 10:54:59 +08:00
可读性第一
viator42
2015-12-14 11:01:20 +08:00
模块分级清楚的时候用短命名,其他情况用长命名.比如 produc.list.all 或者 productListAll
mahone3297
2015-12-14 11:05:46 +08:00
短。。。以前长,应该是为了 autoload 吧。。。
jmc891205
2015-12-14 11:16:13 +08:00
vi 不是也有 ctrl+p 的自动补全功能吗?

不过太长的命名也不好。如果代码里到处都是长度大于半行的变量名,那我觉得我也会抓狂的。
ooh
2015-12-14 11:31:31 +08:00
phpmd
500miles
2015-12-14 13:34:26 +08:00
我喜欢长命名, 但是顶多三个单词, 再长就索性 缩写加注释

后来.... 接触 go 以后 整个人都不好了
rainex
2015-12-14 16:15:34 +08:00
长点,但要适可而止。

说实话,就 php 内置的那些函数名那个原始, db_query 和 DBQuery 新旧风格混起来写是真难看,就优雅程度而言,真不知道 php 是最好的预言这段子怎么出来的,内置函数名和类名没 C#参考下 Java 来设计也行啊,缺乏基本的审美
rainex
2015-12-14 16:16:35 +08:00
修改上一条:预言 应为 预言
rainex
2015-12-14 16:16:58 +08:00
…… 预言 应为 语言
xujif
2015-12-14 16:46:31 +08:00
@rainex php 是标准库一般都是 snake 命名规范,与 camel 只是形式区别,不存在好坏, c 语言就是这个。另外, php 应该比 java 和 c#都要早。
bridge45
2015-12-14 17:26:01 +08:00
@kslr 他们的 VIM 都没有代码提示,长命名 打字很麻烦
bridge45
2015-12-14 17:26:26 +08:00
@movtoy 我也是这样觉得的.方便以后查看
bridge45
2015-12-14 17:27:17 +08:00
@viator42 这个建议好 谢谢
bridge45
2015-12-14 17:31:46 +08:00
@jmc891205 这个补全基本上都是本文件 除非做 ctags 但是现在大都并没有这样做
Felldeadbird
2015-12-14 19:37:34 +08:00
长命名和有没有代码提示没有冲突,我觉得是人太懒。代码经常接触,自然会记得命名的。

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

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

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

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

© 2021 V2EX