首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

驼峰命名法有什么好处?

  •  
  •   nilai · 2015-06-29 11:59:55 +08:00 · 11817 次点击
    这是一个创建于 1598 天前的主题,其中的信息可能已经有所发展或是发生改变。
    个人不是很喜欢,大小写切换 太麻烦了。 个人更喜欢下划线分割。欢迎大家讨论!
    62 回复  |  直到 2015-07-01 01:10:26 +08:00
        1
    junyuecao   2015-06-29 12:02:25 +08:00   ♥ 1
    按shift+_和shift + 字母有什么区别吗
        2
    endrollex   2015-06-29 12:03:40 +08:00   ♥ 1
    下划线会多一个字符,越多变量名越长
        3
    knightdf   2015-06-29 12:05:18 +08:00
    变量名用下划线还好,类名搞个下划线分割的你用着不觉得恶心吗?驼峰看着干净整齐点。。。
        4
    ck65   2015-06-29 12:06:39 +08:00 via iPhone   ♥ 1
    打汉字还会多按空格,选择一个命名规范这件事暂时还烦不到楼主。
        5
    FrankFang128   2015-06-29 12:06:56 +08:00 via Android
    按shift啊,谁还用 Caps lock?
        6
    CIVITAS   2015-06-29 12:08:35 +08:00
    Basic 习惯,首字母也大写……
        7
    TMily   2015-06-29 12:10:11 +08:00
    楼猪不知道按Shift会出大写 鉴定完毕。。。
        8
    awebird   2015-06-29 12:17:46 +08:00 via Android
    从mysql字段赋值转来转去比较恼火…
        9
    broadliyn   2015-06-29 12:24:03 +08:00   ♥ 7
    警告:严重要求楼主修改头像,不然直接block
        10
    imswing   2015-06-29 12:25:23 +08:00 via Android
    @broadliyn 哈哈哈哈
        11
    ericls   2015-06-29 12:27:24 +08:00
    不喜欢 不直接!
        12
    66beta   2015-06-29 12:27:42 +08:00
    PHP类/方法下划线,JS函数驼峰,CSS类名中划线,图片名下划线
    觉得自己精神分裂了。。。
        13
    imn1   2015-06-29 12:32:04 +08:00
    每次看这个头像都有拍打屏幕的冲动~
        14
    yangff   2015-06-29 12:33:14 +08:00
    比较看环境吧, 和@66beta 挺像的...
        15
    victorylau808   2015-06-29 12:40:51 +08:00
    下划线也不是得按shift键。。。
        16
    mhycy   2015-06-29 12:42:03 +08:00
    减少一些长度。。
    对我而言按CapsLock远比Shift简单快捷。。。
        17
    9hills   2015-06-29 13:08:57 +08:00
    好看,不过我喜欢首字母小写的

    enablePanic,感觉挺漂亮。。

    enable_panic 丑
        18
    otakustay   2015-06-29 13:26:53 +08:00
    @9hills 无论是camel还是pascal总会有些单词不漂亮,我还特地为此研究了研究单词的outline给人的感觉

    比如xxxId这种就不怎么好看而xxxName就明显要好看一些……但总得来说camel的起伏感确实是最好的,特别是2个单词(xxxName这种)很符合男人最喜欢的胸部的曲线- -
        19
    Pastsong   2015-06-29 13:29:31 +08:00
    学Objective-C的时候看到那一长串的驼峰方法名都要晕了
        20
    9hills   2015-06-29 13:33:07 +08:00
    @Pastsong
    两个单词是最合适的,4个单词是上限。否则美感全没了
        21
    w88975   2015-06-29 14:17:30 +08:00
    个人觉得_LOUZHU_SHABI 这种命名法逼格超高 看着就跟系统级API一样..
        22
    sudoz   2015-06-29 14:19:12 +08:00
    遵从语言的社区风格
        23
    visonme   2015-06-29 14:35:35 +08:00
    只是一种命名方式而已,不要太在乎那种nice那种不nice了 ,自己喜欢那种就用那种了,两种基本都不用的人飘过 ,反正人家能直观的看出我的命名就可以了
        24
    visonme   2015-06-29 14:36:51 +08:00
    但如果你的项目是协作项目或者社区项目那就有必要根据事先的规范走了
        25
    TianTao   2015-06-29 14:40:00 +08:00
    写js的时候常用下划线
        26
    blue7wings   2015-06-29 15:38:13 +08:00
    我函数喜欢用驼峰,变量喜欢用下划线,这样是不是不好?
        27
    DaniloSam   2015-06-29 15:40:34 +08:00
    由于头像太闹心,把LZ给block了
        28
    zachgenius   2015-06-29 15:50:15 +08:00
    真想把LZ给B掉,头像太闹心
        29
    nullcc   2015-06-29 15:56:21 +08:00
    Obj-C的惯用命名法可以说几乎把驼峰法发挥到了极致,刚开始可能会不适应,时间久了以后你会发现其实还是很带感的。
        30
    digimoon   2015-06-29 16:26:33 +08:00
    喜欢下划线,可读性好很多
    xiHuanXiaHuaXian,keDuXingHaoHenDuo
        31
    moe3000   2015-06-29 16:33:10 +08:00
    我是来看头像的
        32
    WildCat   2015-06-29 16:52:14 +08:00 via iPhone
    明显是遵从语言的惯例,你 Python Ruby 里面全用驼峰法会被喷的吧
        33
    CRight   2015-06-29 16:53:48 +08:00 via iPad
    你这头像…我真擦了一下屏幕。
        34
    dallaslu   2015-06-29 17:03:29 +08:00
    都是浮云。「驼峰命名」与「下划线分割」可以很方便的转换。
        35
    abscon   2015-06-29 17:11:06 +08:00
    @digimoon

    xi_huan->xia_hua_xian+ke_du_xing->hao_hen_duo

    xiHuan->xiaHuaXian+keDuXing->haoHenDuo

    驼峰命名法胜出
        36
    avastms   2015-06-29 17:13:23 +08:00 via iPhone
    世界上还是有一些东西,是不区分大小写的
        37
    xifangczy   2015-06-29 17:15:36 +08:00
    如果是你一个人写什么方法都无所谓,统一就好。最怕那种服务端用一套 前端的人用另一套命名方法。要疯。
        38
    roychan   2015-06-29 18:30:06 +08:00
    类大驼峰,函数方法下划线,变量小驼峰…
        39
    Gonster   2015-06-29 18:43:35 +08:00 via iPhone
    有些专有名词和缩写本身就是大写的,这时候写在驼峰命名的变量和方法名里会让我很纠结
        40
    bdbai   2015-06-29 18:47:37 +08:00 via iPhone
    @WildCat 弱问Python啥习惯?
        41
    neoblackcap   2015-06-29 18:55:32 +08:00
    @bdbai pep8
        42
    jsq2627   2015-06-29 19:04:03 +08:00
    看看易语言,人家才不纠结这个呢(逃
        43
    ooh   2015-06-29 19:11:14 +08:00
    好处就是不用纠结
        44
    digimoon   2015-06-29 19:31:58 +08:00
    @abscon
    识别率太低不能一眼就认出是单词还是乱打,在平面设计里面这种密度大的一条状文字或图形因为可读性低,所以多是当作一个图形块来处理
        45
    fengyqf   2015-06-29 19:34:27 +08:00
    头像太闹心。。。。
        46
    digimoon   2015-06-29 19:40:00 +08:00
    @abscon
    大写字母识别率也比小写的高,我再看了一眼自己打的那串只看到XXHXD这样的标识,不能很快地定义出这串究竟是拼音还是英文还是乱打的字符
    用下划线隔开后很容易就能结合上平时的拼音在头脑中作出处理,因为都是2、3、4这样的字母数量词组,如果数量差距再大点那么大脑就很容易将他作为英文词组来处理,所以识别率很高
        47
    happynohi   2015-06-29 20:50:17 +08:00
    喜欢驼峰是因为省字数,但单词很多的时候还是下划线或者中划线更好些。
    遵守社区习惯更重要。
        48
    NovemberEleven   2015-06-29 23:08:26 +08:00
    @FrankFang128 我用。。。是不是好low?
        49
    gemini   2015-06-29 23:26:53 +08:00
    没_有_下_划_线_不_开_心_呀_ ^_^
        50
    abscon   2015-06-29 23:52:22 +08:00 via iPhone
    @digimoon 不觉得下划线和操作符更类似么,我更关注整体结构上的清晰。密度更大的驼峰变量反而更好看,而且母语是汉语的我表示分词无压力…
        51
    Rocko   2015-06-29 23:55:26 +08:00
    我觉得驼峰面向对象,有人有这感觉没~~~
        52
    iyaozhen   2015-06-30 00:44:41 +08:00
    习惯小驼峰。xiaoTuoFeng
    因为下划线会使得变量很长。

    类的方法名也用驼峰。不过面向过程的时候函数用下划线。function get_user_name()
        53
    liubiantao   2015-06-30 02:29:50 +08:00
    @junyuecao 有区别啊,驼峰只要按两个键,一次搞定,下划线需要按三个键,两次才能搞定。LZ 简直自己打脸。
        54
    cutepig49   2015-06-30 06:38:15 +08:00
    各有各的好处,这更多是个信仰问题,就好象左花括号要不要另起一行一样。
    我喜欢跟着标准库的写法走,标准库是什么写法我就是什么写法,这会让我有一种觉得我的代码与标准库水乳交融不分彼此的欣快感。
        55
    timi   2015-06-30 08:57:50 +08:00
    不喜欢下划线。。。
        56
    along   2015-06-30 09:41:27 +08:00
    月经贴。假定完毕!
    PS:其实不管你是用 驼峰命名也好,帕斯卡命名也好,匈牙利命名法也罢,本质没多大区别,无非是为了让你的搭档们或者是继承者们看代码不像看大海……而已,团队约定好了就好……
    话说主张某个命名法,会暴漏常用平台,和启蒙语言的……好像也没什么好暴漏的……
        57
    wizardoz   2015-06-30 09:59:57 +08:00
    习惯问题,Windows的编程和C++大多喜欢驼峰。Linux的编程和C大多喜欢下划线。
    说那种好那种不好都太主观了!
        58
    rundis   2015-06-30 10:13:39 +08:00 via iPhone
    变量用匈牙利,类名驼峰
        59
    junyuecao   2015-06-30 12:48:02 +08:00
    @liubiantao 为什么下划线需要三个键呢?
        60
    cys   2015-06-30 15:30:33 +08:00
    module_name, package_name, ClassName, method_name, ExceptionName, function_name, GLOBAL_CONSTANT_NAME, global_var_name, instance_var_name, function_parameter_name, local_var_name.
        61
    hitsmaxft   2015-06-30 22:10:36 +08:00
    我习惯 function 用下划线,method 或者 property 之类等等其他都用驼峰,主要是加了个下划线现在觉得有点冗长
        62
    liubiantao   2015-07-01 01:10:26 +08:00
    @junyuecao 我的意思不是下划线本身要三个键,还是举个例子吧。
    比如 appleBanana 和 apple_banana,我比较的是 「B」 和「_b」,这样比才公平嘛。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1028 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 37ms · UTC 22:52 · PVG 06:52 · LAX 14:52 · JFK 17:52
    ♥ Do have faith in what you're doing.