sonders
V2EX  ›  问与答

如果写 JS 用中文命名变量

  •  
  •   sonders · Sep 6, 2022 · 2901 views
    This topic created in 1525 days ago, the information mentioned may be changed or developed.

    假设在写业务时,大家都用中文命名变量,会怎么样?有什么问题?

    19 replies  •  2022-09-10 09:47:49 +08:00
    Leviathann
    Leviathann
    Sep 6, 2022
    1
    切输入法很烦
    尤其是 vim mode 下
    sonders
    sonders
    OP
    Sep 6, 2022 via Android
    2
    @Leviathann 哈哈,确实。不过大家用这个共识来写代码,想想还挺有意思
    wdssmq
    wdssmq
    Sep 6, 2022
    3
    关键词命令设置成为输入法短语好像也能破?

    @Leviathann aText 还支持自动插光标,开输入法也能触发。
    Vegetable
    Vegetable
    Sep 6, 2022
    4
    用 const 结果在 github 搜了一下,找到这个仓库,你可以去品一品

    https://github.com/tpl-ol/nsh/blob/main/src/b/t.ts
    akira
    akira
    Sep 6, 2022
    5
    很讨厌来回来回切换输入法
    sonders
    sonders
    OP
    Sep 6, 2022
    6
    @Vegetable 竟然看不习惯,那个函数名“是 node”就太别扭了
    BUHeF254Lpd1MH06
    BUHeF254Lpd1MH06
    Sep 6, 2022❤️1
    7
    会让你的同事觉得你很 low
    dcsuibian
    dcsuibian
    Sep 6, 2022
    8
    如果英文名实在很难表达,我感觉是可以的,比如要创建的变量又多又杂。
    关键点是中文变量名的收益
    eason1874
    eason1874
    Sep 6, 2022
    9
    一想到要频繁切换输入法我就开始烦躁了。。。我这 Windows 10 切换中文输入法有时候会失败,要切换 tab 再切回来才能正常切换
    ipwx
    ipwx
    Sep 6, 2022
    10
    如果是 “入党介绍人” 这种字段我觉得用中文变量毫无关系。

    但是“价格”这种用 price 打起来和读起来不都更舒服么。
    ipwx
    ipwx
    Sep 6, 2022❤️1
    11
    就比如上面有人提到的例子 https://github.com/tpl-ol/nsh/blob/main/src/b/t.ts

    感受一下:

    命令行参数 <=> args
    初始化交互控制器 <=> initController
    winglight2016
    winglight2016
    Sep 6, 2022❤️1
    12
    @Vegetable 这代码,我居然要先翻成英文才能看懂

    改变惯例这种事情,基本上属于白费力气
    bcql
    bcql
    Sep 6, 2022❤️1
    13
    会识别出来很 low 的同事:看他觉不觉得你 low 就知道了
    aoeui
    aoeui
    Sep 6, 2022 via Android❤️1
    14
    中文至少比胡乱翻译的英语好,也比全拼好,比拼音首字母更不必说了(看到拼音首字母的代码真的想哭 😭)。

    在自己无法准确翻译为英文的情况下,我会用中文,如果语言不支持 Unicode 变量名,只能用全拼。

    所以优先级: 英文(准确翻译)>> 中文 >> 中文全拼
    ragnaroks
    ragnaroks
    Sep 6, 2022❤️1
    15
    有的时候我会选择将变量或者方法以中文( utf16 )命名,比如
    ```csharp
    public (List<String> 操作失败的网卡名称列表,List<String> 操作成功的网卡名称列表) 遍历网卡并通过 ping 的方式检测无效 ipv6 并尝试重新获取地址 ();
    ```
    lululau
    lululau
    Sep 6, 2022
    16
    用中文没毛病,但是用汉字就是你的不对了,可以用拼音啊,拼音也算中文吧

    const jieguo = 1
    fiveStarLaoliang
    fiveStarLaoliang
    Sep 7, 2022
    17
    相比拼音,中文也不是那么难接收了,主要是看惯了英文,看到中文脑子换不过来
    param
    param
    Sep 9, 2022 via Android
    18
    @Leviathann 相反,vim 有插件,切换就很方便
    nexo
    nexo
    Sep 10, 2022 via Android
    19
    @lululau 这种是最难受的 拼音重合度很高 中文谐音多得要死
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2180 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 14:23 · PVG 22:23 · LAX 06:23 · JFK 09:23
    ♥ Do have faith in what you're doing.