V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xuanwu
V2EX  ›  推广

[中文编程知乎专栏] 在国内原创开源项目中使用中文命名的意义与方式

  •  
  •   xuanwu · 2018-12-23 06:11:13 +08:00 · 4100 次点击
    这是一个创建于 1944 天前的主题,其中的信息可能已经有所发展或是发生改变。
    40 条回复    2018-12-25 22:10:16 +08:00
    storypanda
        1
    storypanda  
       2018-12-23 06:39:21 +08:00 via Android
    又看到你了
    kltt22
        2
    kltt22  
       2018-12-23 08:02:35 +08:00 via Android   ❤️ 3
    推的毫无意义,你看看易语言,人家有产品。你在捣鼓啥,把现有的程序加个中文命名,没有任何意义。光来回切输入法就烦死了
    nfroot
        3
    nfroot  
       2018-12-23 09:46:06 +08:00 via Android
    @kltt22 易语言应该是自带输入法,输入挺方便,中英文切换应该做了优化,其他语言搞中文命名。。。。。就没那么方便了。
    zn
        4
    zn  
       2018-12-23 09:50:55 +08:00 via iPhone   ❤️ 1
    好了好了,我们支持你,你不要再发了好吗?
    Biebe
        5
    Biebe  
       2018-12-23 10:00:23 +08:00
    好了好了,我们支持你,你不要再发了好吗?
    ericls
        6
    ericls  
       2018-12-23 10:01:21 +08:00 via iPhone
    不如推广英语学习
    对社区的帮助大
    tetora
        7
    tetora  
       2018-12-23 11:15:27 +08:00 via Android
    大佬推广方式有问题,感觉这个行业的东西是靠口口相传的,不是广告洗脑
    laike9m
        8
    laike9m  
       2018-12-23 11:19:01 +08:00 via Android
    block 了。天天发烦不烦
    lucahan
        9
    lucahan  
       2018-12-23 11:40:39 +08:00
    烦不烦啊。人家易语言早就搞出来的东西,你就别吹了。
    xuanwu
        10
    xuanwu  
    OP
       2018-12-23 11:52:57 +08:00
    @tetora
    @zn
    @Biebe 一度也认为只要做出成果就好, 直到发现这些推手: https://zhuanlan.zhihu.com/p/40099718
    因此从重实践轻宣传转为两者兼顾.
    sagaxu
        11
    sagaxu  
       2018-12-23 12:28:54 +08:00 via Android   ❤️ 3
    把 APIJSON 汉化一下,然后你们联合推广
    Kilerd
        12
    Kilerd  
       2018-12-23 12:31:48 +08:00 via iPhone   ❤️ 1
    算了,忍了那么久还是要 block 了,烦不烦。
    如果你还是工薪阶层,把这个想法告诉你老板,先说服你老板,拿公司的项目做部分改造,搞出一点名堂了再来发帖行不行,总好过你天天在发这些无意义的帖子
    chungzhao
        13
    chungzhao  
       2018-12-23 13:45:39 +08:00
    宣传的话,还是不要发 v2 了。。。
    都没人表示什么支持的态度你说得还挺有意思。。。
    是不是无聊啊。。。
    leitwolf
        14
    leitwolf  
       2018-12-23 14:46:12 +08:00 via Android
    是不是越多人反对宣传起来越带劲?
    blindpirate
        15
    blindpirate  
       2018-12-23 15:01:45 +08:00
    好了好了,我们支持你,你不要再发了好吗?
    blindpirate
        16
    blindpirate  
       2018-12-23 15:08:33 +08:00
    有本事就用中文命名写一个 Github 排名第一的库,谁想贡献都必须用中文,不用中文不给 merge。自己连一个拿的出手的项目都没有,在这里空谈有什么意义?

    Talk is cheap, show me the code.
    Epsil0n9
        17
    Epsil0n9  
       2018-12-23 15:17:12 +08:00 via iPhone
    可能是认知上对英语有偏见
    Desiree
        18
    Desiree  
       2018-12-23 16:01:10 +08:00
    很牛逼,但是我还是只用英文
    yunye
        19
    yunye  
       2018-12-23 16:26:28 +08:00
    真无聊,有这时间去打游戏不好吗?
    kanex
        20
    kanex  
       2018-12-23 18:56:05 +08:00 via iPhone   ❤️ 1
    真心建议 lz 去做一下心理咨询或者看一下精神科,你可能有强迫型人格障碍
    edk24
        21
    edk24  
       2018-12-23 22:05:03 +08:00
    中文编程在这个年代真没什么存在的意义
    1.要么代码用中文, 编译 /运行时翻译成英文代码. 毫无意义, 反而会误导很多人(中文 PHP 了解一下)
    2.要么像易语言, 基于 c++编写的编译器(启动->c++引导启动->易语言代码逻辑->结束), 支持库是其他编程语言编译的动态链接库.

    `2`还有点意义, 不过现在年轻人文化水平越来越高了. 英语不再是门槛, 而且编程不是必须会英语. 在下就不会英语, 会写点 php python html js 啥的. 知道关键字的含义会拼写却不知道怎么发音是家常便饭.


    代码只是给`人`阅读的, 整个编译 /运行的过程其实都是翻译. 你要把代码翻译成无数个 0 和 1 给处理器执行. 是否是中文代码根本不重要

    或许这种`中文代码`编译成二进制能实现, 但你是在挑战整个计算机的基础发展和生态圈. 外国人凭什么陪你玩?
    连国家可能都觉得`能做 但是没必要`


    来来回回单词就那些, 真的不是很麻烦, 我想逻辑好不好才是门槛吧?
    designer
        22
    designer  
       2018-12-23 22:16:49 +08:00 via iPhone
    这种观点就是爽了你自己,对别人没有任何帮助。
    尊重你的观点,找到你志同道合的朋友交流。
    真的不要在 V2EX 上发了。这里的人不缺那点英语基础。
    mingyun
        23
    mingyun  
       2018-12-23 22:54:23 +08:00
    楼主很拼
    xuanwu
        24
    xuanwu  
    OP
       2018-12-24 01:22:38 +08:00
    @edk24
    > 在下就不会英语, 会写点 php python html js 啥的. 知道关键字的含义会拼写却不知道怎么发音是家常便饭

    那么你的标识符命名是用的拼音还是 a/b/c?

    > 代码只是给`人`阅读的, 整个编译 /运行的过程其实都是翻译. 你要把代码翻译成无数个 0 和 1 给处理器执行. 是否是中文代码根本不重要

    请搜一下"代码可读性"
    Mystery0
        25
    Mystery0  
       2018-12-24 01:26:13 +08:00 via Android
    @laike9m 求问怎么 block
    Trumeet
        26
    Trumeet  
       2018-12-24 06:26:35 +08:00 via Android
    中文代码可读性就好了吗?

    代码的可读是基于团队有统一、严格遵循的代码风格,不瞎写,多谢注释和说明,可读性才会高。而不是把命名都改成中文,中英文混搭不难受吗?
    xuanwu
        27
    xuanwu  
    OP
       2018-12-24 07:06:02 +08:00
    @Trumeet
    > 代码的可读是基于团队有统一、严格遵循的代码风格,不瞎写,多谢注释和说明,可读性才会高

    这些与用中文命名不矛盾

    如果一定要作个比较, 请参考这里的两种方式: https://www.v2ex.com/t/520017#r_6644307
    binaryify
        28
    binaryify  
       2018-12-24 09:00:19 +08:00 via iPhone
    自嗨型项目
    berumotto
        29
    berumotto  
       2018-12-24 09:08:11 +08:00
    建议你去看下心理医生:)
    Trumeet
        30
    Trumeet  
       2018-12-24 10:08:09 +08:00
    (我不想无脑喷,只是想客观考虑一下使用中文命名的可行性、必要性、成本和收益)。
    # 可行性
    当然可行,这还用说?可以试试用拉丁写(倒是没试过 逃)。

    # 必要性
    英文是通用语言,程序关键词都是英文。应该让中国程序员都学会英文,而不是让世界程序员都学会中文,更不应该把代码硬生生改成中文命名,我们需要和世界接轨才行。
    21 世纪了,英文在中国已经普及,用英文写程式是很正常的事情(用中文我倒没见过几个)。楼主花点时间 ”入门“ 下小学英语就可以。

    # 必要性
    和必要性部分一样,绝大多数人都可以无障碍地用英文命名,所以使用中文命名完全没有必要且耽误时间(万一语言不支持 / 编码问题?)

    # 成本和收益
    收益固然是有的,但不和成本相比都是耍流氓。
    首先先说下成本。
    对于已有项目,需要进行重构。对于新项目,需要程序员改变以前的习惯,强制接受新的方式,并不是一件容易的事情。而且对于我这种强迫症来说,中英文混在一起觉得非常难受。最重要的,这些代码拿给老外怎么办?
    扯远了,一句话就是付出太大(大家伙都用英文命名好好的,突然改成中文谁也不好接受)。
    再看看收益。
    这么做除了对少部分不怎么懂英文的初级程序员来说会有助于他们理解,还有什么用?

    不要把有限的时间浪费再无意义的折腾上。
    laike9m
        31
    laike9m  
       2018-12-24 10:10:39 +08:00 via Android
    @Mystery0 点进用户主页就能看到
    xuanwu
        32
    xuanwu  
    OP
       2018-12-24 11:36:29 +08:00
    @Trumeet
    > 绝大多数人都可以无障碍地用英文命名

    如果是的话, 为何还有 codelf 这样的工具呢? 今天还刚看到它的推广文章: http://www.sohu.com/a/283936886_115128 里面的原句:

    "随着项目越来越复杂,变量和函数数量越来越多,英语水平貌似也 hold 不住了。虽然每个编程语言都有各种命名规范,但是也不能解决所有的问题。每个程序员或多或少都在写代码的时候为变量和函数命名苦恼过!"

    麻烦你先去 diss 它一下.
    fyibmsd
        33
    fyibmsd  
       2018-12-24 11:39:45 +08:00
    @Mystery0 点头像进去 然后按钮 block
    Trumeet
        34
    Trumeet  
       2018-12-24 12:10:00 +08:00
    @xuanwu 谁也不能保证百分之百会所有的词。偶尔碰到不会的词用两下就记住了,何必费力不讨好地全篇换中文?一时方便,为以后的错误埋下伏笔
    frittle
        35
    frittle  
       2018-12-24 12:19:05 +08:00
    普及英语比推广中文编程更实在,就算将来你能达到你的目标,也只是某种形式的锁国、闭门造车,把国内编程相关的人员困在中文编程的环境下,满足于用中文编程,怎么和国际接轨交流?
    xuanwu
        36
    xuanwu  
    OP
       2018-12-24 14:23:33 +08:00
    @Trumeet 使用中文命名可以获得更长远的代码可读性

    @frittle 顶楼文章后半篇都在阐述国际合作问题
    Mystery0
        37
    Mystery0  
       2018-12-24 18:25:57 +08:00 via Android
    @laike9m @fyibmsd 谢谢了
    Trumeet
        38
    Trumeet  
       2018-12-25 00:55:39 +08:00 via Android
    @xuanwu 外国人读怎么办?不自己学会英语,反而把代码改成中文才是下策
    xuanwu
        39
    xuanwu  
    OP
       2018-12-25 02:52:29 +08:00
    @Trumeet 顶楼文章后半篇都在阐述国际合作问题
    statfall
        40
    statfall  
       2018-12-25 22:10:16 +08:00 via Android
    @xuanwu 我觉得不如开发个拼音转英文的插件 实在 一点拙见
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1288 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 23:31 · PVG 07:31 · LAX 16:31 · JFK 19:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.