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

开发用词强迫症?

  •  
  •   wenerme ·
    wenerme · 345 天前 · 6694 次点击
    这是一个创建于 345 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

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

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

    有时候起名 要纠结很久
    Seayon
        31
    Seayon  
       344 天前
    非常认可名字要用心去取!并且非常认可这句话:

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

    -- Phil Karlton

    为了找一个合适的变量名经常绞尽脑汁,还好现在有了 ChatGPT ,我把我做的事情的上下文尽可能的告诉他,让他帮我起名。ChatGPT 是语言模型,所以我想它非常适合这个,帮我大大缓解了这个问题。
    cquan
        32
    cquan  
       344 天前
    赞同,我也有点,因为英语有点差,所有有时候会纠结用的正不正宗
    thorneLiu
        33
    thorneLiu  
       343 天前 via Android
    命名非常重要
    自己固定风格 省的得每次纠结
    morebuff
        34
    morebuff  
       343 天前
    +1
    我就是有命名强迫症,包括目录结构什么的
    anonex
        35
    anonex  
       343 天前 via iPhone
    定义 声明 我都是随便用😅
    snarkprayer
        36
    snarkprayer  
       343 天前
    术语倒还好,基本能找到已有的翻译,还有些是偏约定的,比如分页列表用 list ,有限复数的加 s/es ,最难的是国内特有的业务,真要准确翻译那就是一大串长词跟句子似的
    abelmakihara
        37
    abelmakihara  
       343 天前
    只要不是拼写错误就行 非常讨厌单词拼写错误
    bunny777
        38
    bunny777  
       343 天前
    同强迫症,非常需要这样的字典。
    wenerme
        39
    wenerme  
    OP
       343 天前
    > @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   ·   实用小工具   ·   4929 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 09:56 · PVG 17:56 · LAX 01:56 · JFK 04:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.