V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
wenerme
V2EX  ›  程序员

开发用词强迫症?

  •  
  •   wenerme ·
    wenerme · 2023-12-02 12:06:05 +08:00 · 7082 次点击
    这是一个创建于 390 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在编写代码时,我总是特别注重选择恰当的术语(变量、方法、类名等),这种习惯让我形成了一种追求精准度的“强迫症”。多年来,我积累了一个相当丰富的专业词库,您可以在这里查看:我的开发词库 https://wener.me/notes/dev/dict 。我很好奇,是否还有其他开发者也有类似的经历和兴趣?我想知道大家是如何处理这种对精确用词的追求的。

    39 条回复    2023-12-04 15:19:13 +08:00
    enchilada2020
        1
    enchilada2020  
       2023-12-02 12:17:24 +08:00 via Android
    稍微有点 但我的强迫症往往在与懒癌的对决中败阵下来…两者达到了一种微妙的动态平衡 虽然有点内耗…好在没造成太大困扰🚬
    wenerme
        2
    wenerme  
    OP
       2023-12-02 12:30:41 +08:00   ❤️ 1
    自己这一关感觉过不了,重构代码代码很多时候也是这样的动力
    noparking188
        3
    noparking188  
       2023-12-02 12:39:18 +08:00
    收藏了
    lanlanye
        4
    lanlanye  
       2023-12-02 13:04:00 +08:00
    有,但感觉跟 OP 不太一样……我只关心这个词能不能准确代表它的业务含义,其他像是接口用 list 还是名次复数,get 还是 retrieve 之类的都无所谓。
    wenerme
        5
    wenerme  
    OP
       2023-12-02 13:44:33 +08:00
    @lanlanye 关于这个我也会很 care, 回很细心的去设计 api 例如 https://wener.me/notes/service/api/design 。并且希望遵从一定的标准,我觉得这是一个 说服自己的过程
    wenerme
        6
    wenerme  
    OP
       2023-12-02 13:47:18 +08:00   ❤️ 1
    发现除了精确,专业用词,或者叫“行话”( glossary ) 能够更好的快速了解一个业务域,例如 https://wener.me/notes/service/erp/glossary 。用“行话”能更好的表达和问问题,有些时候都是在兜兜转转了解一个已经存在的行话,觉得这个有点像先见过 猪跑 的过程。
    Unpro
        7
    Unpro  
       2023-12-02 14:21:24 +08:00
    强迫症 +1 ,有时会问 chatgpt 用 native English 用领域专业术语怎么说这个词。要是有专门针对 naming things 进行了训练优化的 AI 应用就好了
    stillsilly
        8
    stillsilly  
       2023-12-02 15:00:44 +08:00
    我也有准确命名强迫症,纠结几种写法哪种更好的时候,以前是在 github 搜,哪个搜到更多匹配结果说明哪种写法更常见更地道,后来有了 chatGPT 就让 chatGPT 帮忙取变量名 很好用
    taotaodaddy
        9
    taotaodaddy  
       2023-12-02 15:05:15 +08:00
    这种强迫症,是对的,这是专业,严谨,素养
    chemf
        10
    chemf  
       2023-12-02 15:59:56 +08:00
    +1 ,代码逻辑还没写,光是在命名上就花费不少时间
    37Y37
        11
    37Y37  
       2023-12-02 16:04:04 +08:00 via Android
    哇偶,这个很棒啊,非常需要,很专业
    WhateverYouLike
        12
    WhateverYouLike  
       2023-12-02 16:09:37 +08:00 via Android
    明知 console.log 在短暂的调试后会删掉,但里面的错别字,我都要给它改对了再说。
    wmui
        13
    wmui  
       2023-12-02 16:12:02 +08:00
    总结的“耻辱墙”有被笑到😂
    iomect
        14
    iomect  
       2023-12-02 16:35:49 +08:00   ❤️ 1
    https://unbug.github.io/codelf/
    起名困难症专用
    coyove
        15
    coyove  
       2023-12-02 16:40:50 +08:00
    你的精确用词同事认可吗,否则 codereview 的时候不是血压爆炸
    ma836323493
        16
    ma836323493  
       2023-12-02 16:52:37 +08:00
    快捷键翻译, 不认识的就用拼音
    Herdsman
        17
    Herdsman  
       2023-12-02 17:12:08 +08:00
    收藏了 支持 LZ
    dedemao
        18
    dedemao  
       2023-12-02 17:12:31 +08:00
    当出现用英文单词非常长,且是陌生不常见的单词,而用拼音或首字母又短又能一眼就看出含义时,该选哪个呢?
    klo424
        19
    klo424  
       2023-12-02 17:22:52 +08:00   ❤️ 1
    同。发现个错误,first anme -> first name ,我对单词拼写和语法也有强迫症。
    ruooooooli
        20
    ruooooooli  
       2023-12-02 21:09:39 +08:00
    非常棒,收藏了
    wenerme
        21
    wenerme  
    OP
       2023-12-02 21:26:27 +08:00
    > @Unpro 强迫症 +1 ,有时会问 chatgpt 用 native English 用领域专业术语怎么说这个词。要是有专门针对 naming things 进行了训练优化的 AI 应用就好了

    太有感触了,没有 chatgpt 的时候都是 google 找各种解释,现在有 chatgpt 这时候就方便多了
    wenerme
        22
    wenerme  
    OP
       2023-12-02 21:28:09 +08:00
    @dedemao 找是不是有行业专用的缩写,或者有时候实际可以用另外一个词简单理解。如果是很多词组合的,就考虑去掉 context 部分的描述。
    wenerme
        23
    wenerme  
    OP
       2023-12-02 21:31:15 +08:00
    > @coyove 你的精确用词同事认可吗,否则 codereview 的时候不是血压爆炸

    所以用词要求精确,才有说服力,并且记录下来让别人也能参考,避免引入太多歧义的用词,用词一致开发很舒服,因为很好猜测。
    russ44
        24
    russ44  
       2023-12-02 23:46:58 +08:00
    cool, Ctrl d
    SZP1206
        25
    SZP1206  
       2023-12-03 00:09:32 +08:00
    感谢分享
    ghwolf007
        26
    ghwolf007  
       2023-12-03 09:43:10 +08:00
    已收藏 感谢分享
    zb1141920796
        27
    zb1141920796  
       2023-12-03 09:53:32 +08:00
    我记得有个插件叫 codeif ,可以看看
    emonc
        28
    emonc  
       2023-12-03 09:55:46 +08:00
    好的词库,使我知识增长!👍
    giter
        29
    giter  
       2023-12-03 10:31:34 +08:00
    感谢,希望网站能长期存在下去,加入收藏夹了
    justin2018
        30
    justin2018  
       2023-12-03 10:55:41 +08:00
    +1

    有时候实在不知道咋起名了 索性 p1 p2 p3 了 -_-||

    有时候起名 要纠结很久
    Seayon
        31
    Seayon  
       2023-12-03 16:49:00 +08:00
    非常认可名字要用心去取!并且非常认可这句话:

    There are only two hard things in Computer Science: cache invalidation and naming things.

    -- Phil Karlton

    为了找一个合适的变量名经常绞尽脑汁,还好现在有了 ChatGPT ,我把我做的事情的上下文尽可能的告诉他,让他帮我起名。ChatGPT 是语言模型,所以我想它非常适合这个,帮我大大缓解了这个问题。
    cquan
        32
    cquan  
       2023-12-03 17:20:28 +08:00
    赞同,我也有点,因为英语有点差,所有有时候会纠结用的正不正宗
    thorneLiu
        33
    thorneLiu  
       2023-12-03 21:55:24 +08:00 via Android
    命名非常重要
    自己固定风格 省的得每次纠结
    morebuff
        34
    morebuff  
       2023-12-03 23:22:43 +08:00
    +1
    我就是有命名强迫症,包括目录结构什么的
    anonex
        35
    anonex  
       2023-12-04 09:15:08 +08:00 via iPhone
    定义 声明 我都是随便用😅
    snarkprayer
        36
    snarkprayer  
       2023-12-04 10:46:36 +08:00
    术语倒还好,基本能找到已有的翻译,还有些是偏约定的,比如分页列表用 list ,有限复数的加 s/es ,最难的是国内特有的业务,真要准确翻译那就是一大串长词跟句子似的
    abelmakihara
        37
    abelmakihara  
       2023-12-04 11:07:14 +08:00
    只要不是拼写错误就行 非常讨厌单词拼写错误
    bunny777
        38
    bunny777  
       2023-12-04 12:05:23 +08:00
    同强迫症,非常需要这样的字典。
    wenerme
        39
    wenerme  
    OP
       2023-12-04 15:19:13 +08:00
    > @snarkprayer 术语倒还好,基本能找到已有的翻译,还有些是偏约定的,比如分页列表用 list ,有限复数的加 s/es ,最难的是国内特有的业务,真要准确翻译那就是一大串长词跟句子似的

    这些问题也都遇到过

    1. 我会尽量使用单数,梳理的原因参考 https://wener.me/notes/db/design-schema#%E5%8D%95%E6%95%B0%E8%BF%98%E6%98%AF%E5%A4%8D%E6%95%B0%E8%A1%A8%E5%90%8D

    - 避免大部分人思考单数复数形式变化
    - 方便代码生成、方便猜测
    - 特殊关键词特殊处理 - 例如 user -> users

    2. 国内特有的业务 如果是 toG ,可以在 GB 上找数据字段命名规范 https://wener.me/notes/service/cn/gb/list

    - 例如 GB/T 19488.2-2008 电子政务数据元 第 2 部分:公共数据元目录
    - 有时候它也是用的拼音,但部分场景尽量保持拼音一致也行(不过还是难,容易同音)
    - 有时候它的 glossary 有英文解释
    - 然后再找对应国外标准场景的命名方式 ( 2023 年了,能做的系统大部分都做过了,玩不出花,但发现真对应不上,那 100% 是需求方/设计方 不专业导致的)
    - 再不济只能团队内维护字典了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1228 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:11 · PVG 02:11 · LAX 10:11 · JFK 13:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.