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

代码里面有中文,大家觉得怎么样?

  •  
  •   514656282 · 2018-06-17 22:28:36 +08:00 · 16667 次点击
    这是一个创建于 2380 天前的主题,其中的信息可能已经有所发展或是发生改变。

    举个简单的例子,如下,平时写代码的时候一些枚举的状态我比较倾向直接用中文,包括前端传参和返回给前端的内容,个人认为这样可读性会高一点。

    做了三年 Android 开发,以前对接后端接口的时候经常都是一堆数字 0123,每次查问题或者抓包的时候都要看看代码(后端基本不写文档,返回的一大堆无用的字段),所以现在转后端了,写接口的时候都会尽量考虑减少前端的对接的难度

    public enum Status {
        网络断开, 网络恢复
    }

    同事认为这样很不规范,叫我以后不要这样写了,要么用英文,要么用数字 0, 1, 2, 3

    大家怎么看待这个问题?

    第 1 条附言  ·  2018-06-19 12:45:30 +08:00
    很多人没看懂帖子,我说的这个代码里面的中文跟国际化跟 i18n 没有一点关系,并不是返回给前端展示用的,也跟什么 status,message 没有关系,说明如下

    写前端代码的时候,你们是觉得哪种对于前端来说可读性会更高点? (重申并不是说后端就不用写文档)

    后端返回数字的写法
    <div v-if:="user_type === 0">
    ...显示普通用户面板
    </div>

    后端返回中文的写法
    <div v-if:="user_type === '普通用户'">
    ...显示普通用户面板
    </div>
    152 条回复    2020-08-27 10:17:48 +08:00
    1  2  
    chnhyg
        1
    chnhyg  
       2018-06-17 22:37:27 +08:00
    为什么不用英文呢?

    public enum NetworkStatusEnum {
    Connected, Disconnected, ...
    }
    xujinkai
        2
    xujinkai  
       2018-06-17 22:38:27 +08:00 via Android   ❤️ 1
    中文解码错误就整体悲剧了...
    514656282
        3
    514656282  
    OP
       2018-06-17 22:40:35 +08:00
    @chnhyg 只是随便举了个简单的例子,实际业务上出现的情况会更加复杂
    zjp
        4
    zjp  
       2018-06-17 22:42:09 +08:00 via Android
    用数字的话还要 enum 干嘛,甚至还不如中文。除非同时返回 status 和 message
    514656282
        5
    514656282  
    OP
       2018-06-17 22:42:48 +08:00
    @xujinkai 代码一直都是运行得好好的,不论是前端还是后端,暂时没有发现会影响到实际运行的情况
    ho121
        6
    ho121  
       2018-06-17 22:45:17 +08:00 via Android
    @514656282 再复杂也可以用英文。像你这样说,国外 it 公司都该怎么办。

    不用中文首先是习惯问题。然后中英文切换会很烦(比如在 vim 中切换中英文)。最后,中文编码问题比较明显,兼容性也可能有问题
    rockyou12
        7
    rockyou12  
       2018-06-17 22:46:03 +08:00
    很多时候部署的环境一变,真的可能有很多奇奇怪怪的问题,哪怕是 c#或者 go 这种对 utf-8 支持得非常好的语言……
    514656282
        8
    514656282  
    OP
       2018-06-17 22:46:07 +08:00
    @zjp 公司的后端一般都是返回 {"status": 0}这种,不存在 enum,然后用聊天工具告诉你一下这些数字代表什么意思 😂
    littleylv
        9
    littleylv  
       2018-06-17 22:47:22 +08:00   ❤️ 7
    说句难听的……很奇葩……
    514656282
        10
    514656282  
    OP
       2018-06-17 22:48:41 +08:00
    @littleylv 确实很多人都没见过😂
    514656282
        11
    514656282  
    OP
       2018-06-17 22:52:20 +08:00
    @ho121 小项目基本上不会指望会有外国人看到,我一直在 idea 上用 vim,切换问题似乎不太大
    geelaw
        12
    geelaw  
       2018-06-17 22:54:43 +08:00   ❤️ 2
    enum 成员的名字必须是标识符,因此不可以是数字开头,自然也不能是数字。

    Java 允许汉字作为标识符,因为汉字属于 Lo Unicode 一般类(这类字符都允许作为标识符的一部分)。

    “不规范”应该是说你们的团队规范,看待方式是 be compliant.
    zjp
        13
    zjp  
       2018-06-17 22:55:04 +08:00 via Android
    生产环境可能有其他的考虑,起码 debug 时附上一句状态消息。其实还是英文省事,不用考虑编码问题
    @514656282
    HangoX
        14
    HangoX  
       2018-06-17 22:58:14 +08:00
    不瞒楼主,我干过这事情,其实没问题的,但是我应对的场景更复杂。想想你写了英文,最后因为过于复杂,还是要看注释,还不如直接用中文。Java 是天生支持中文的,用的都是 AS,没有编码问题。
    514656282
        15
    514656282  
    OP
       2018-06-17 23:02:16 +08:00
    @HangoX 我应对的场景也很复杂😂 只是为了方便在这里举了个很简单的例子
    q397064399
        16
    q397064399  
       2018-06-17 23:02:23 +08:00
    @514656282 #8 JPA 默认序列化的 ENUM 是字符串
    514656282
        17
    514656282  
    OP
       2018-06-17 23:04:57 +08:00
    @geelaw 这个解释很好,不过这个“不规范”,感觉只是其他人没见过,就觉得反感了
    changnet
        18
    changnet  
       2018-06-17 23:08:43 +08:00 via Android
    不同的机器,不同的终端,不同的编辑器,不同的语言交互,出问题你就知道有多麻烦。当然你硬要说现在程序能跑,没问题,那也没问题。
    yimity
        19
    yimity  
       2018-06-17 23:09:23 +08:00 via Android
    一定要用数字,不然产品让你改成网络已断开,网络已连接,你怎么办?
    nicevar
        20
    nicevar  
       2018-06-17 23:10:23 +08:00   ❤️ 1
    楼主没有经历过 vs 和 eclipse 混用的时代,某个人一不小心一个操作导致代码所有中文全部乱码,包括注释,没有注意到就提交了,这时候再有个人操作一下有可能乱套了,可能都没法还原,所以那个时代经常会看到一些小公司的项目代码总有些奇奇怪怪的乱码
    jmc891205
        21
    jmc891205  
       2018-06-17 23:13:28 +08:00
    写代码的时候还要中英文切换不会很麻烦吗
    ToT
        22
    ToT  
       2018-06-17 23:18:36 +08:00
    写注释用中文没问题。其他的话,就看你们怎么协调沟通了。API 的话,最好有一个统一的信息吧?
    thread2
        23
    thread2  
       2018-06-17 23:20:18 +08:00
    可以的,之前我们数据库表名也是中文的,软件照样卖好价钱
    f2f2f
        24
    f2f2f  
       2018-06-17 23:20:32 +08:00
    个人觉得你要是内部前后端协作完善的话应该避免这种情况
    不过要是随便一写倒也无妨,毕竟对于国人这种代码看着方便
    murmur
        25
    murmur  
       2018-06-17 23:22:23 +08:00
    utf8 编码普及了应该是可以的
    估计都是在互联网公司呆惯了
    没开发过行业软件
    一般的生活软件还可以英文
    行业软件英文不会写写拼音 还有的普通话不标准粤语四川话都写到变量里了 所以想来想去中文变量名真不错
    LukeEuler
        26
    LukeEuler  
       2018-06-17 23:22:58 +08:00
    只要团队规范一致,就可以了,没问题。(个人觉得不爽的是等宽字体的问题,这个会把我逼疯的)
    murmur
        27
    murmur  
       2018-06-17 23:24:05 +08:00
    @yimity java 这种语言还怕你这么简单的重构么
    514656282
        28
    514656282  
    OP
       2018-06-17 23:51:07 +08:00 via iPhone
    @yimity 这个不是用来给前端直接显示的,只是用来判断一些情景
    zj299792458
        29
    zj299792458  
       2018-06-17 23:55:16 +08:00 via iPhone
    写中文真的不会有编码问题么……我的 IDE 都是默认 UTF8
    514656282
        30
    514656282  
    OP
       2018-06-17 23:56:31 +08:00 via iPhone
    @jmc891205 还行😄,毕竟硬要挤个英文出来更加头疼
    zjsxwc
        31
    zjsxwc  
       2018-06-17 23:59:03 +08:00 via iPhone
    返回个{"status": "网络恢复"}我觉得很奇怪。

    反倒是用数字更加灵活,语意更加丰富,考虑下面的这些情况:

    1. 有国际化多语言需求时,新增国家语言时,把“网络恢复”翻译成别的语言,和把数字翻译成别的语言,我觉得还是数字方式顺眼。

    2. 业务上的改动对原先的 status 更加细化的需求,比如原先的采购只有“直接发布未报价,被报价,被采纳”,变成了“直接发布待审核,审核通过未报价,被报价,被采纳”,这时本质上其实是原先的“直接发布未报价”变成了现在的“审核通过未报价”,如果用中文等语言写死的话后面的人就还不来了,但如果是数字的话只要给新的“待审核”分配个新数字就行。
    514656282
        32
    514656282  
    OP
       2018-06-18 00:04:15 +08:00 via iPhone
    @zjsxwc 返回这个中文真的不是用来给前端直接显示,就跟返回数字一样,返回 0 的时候需要做 xxx 处理,返回 1 的时候要做 xxx 处理,只是在编辑代码上,不需要再备注 0 是什么意思 1 又是什么意思这样。
    gamexg
        33
    gamexg  
       2018-06-18 00:35:31 +08:00 via Android
    虽然没用中文,
    但是现在觉得真用也没什么,各种环境应该不会再碰到不支持中文的情况了。

    楼上说可能有团队成员提交成乱码,我觉得这里的问题不是中文,而是没统一规定编码。

    即使变量不是中文,国内注释也一点中文没有的不多吧?注释全部变成乱码也是不可接受的。

    反对代码内硬编码数字,接口返回数字没问题。
    JCZ2MkKb5S8ZX9pq
        34
    JCZ2MkKb5S8ZX9pq  
       2018-06-18 00:42:42 +08:00
    其实有些情况下用中文无可厚非吧,msg、注释甚至部分 json 的 key。

    - 不少程序员的英文水平堪忧,字段名瞎起,不同人读可能会有误解。
    - 母语理解不容易有误差,而且很可能更精确简短。
    - 最终应用场景是中文,经常碰到 中文 到 英文(数字码) 再回 中文 的情况,匹配起来繁琐。

    之前搞基金,各个平台的中文称呼都很规范一致,英文命名就各有一套,很麻烦。最近弄淘宝,也碰到类似问题。
    ltxlouis
        35
    ltxlouis  
       2018-06-18 02:15:24 +08:00 via Android
    可以看一下 HttpStatus 的那种枚举类,感觉比较好一点
    Perry
        36
    Perry  
       2018-06-18 02:46:13 +08:00
    有没有考虑过自动补全?
    pinews
        37
    pinews  
       2018-06-18 05:24:38 +08:00
    用中文我是支持的,但是我不支持用中文是为了解决一些问题,或者中文会造成什么问题。
    这不仅是个技术问题,更是个责任问题。
    ----说不规范只是个借口,但是如果出了问题谁来承担责任,这个问题楼主想过吗?如果楼主拍拍胸脯说没问题,我倒觉得有改变的可能
    从论坛的情况来看,大部分还只是技术的奴隶,负担不起改造世界的责任,楼主需要付出更多的努力才行。
    fuermosi777
        38
    fuermosi777  
       2018-06-18 05:32:16 +08:00
    按住 ctrl 跳转单词的时候 遇到中文就一个字一个字跳
    opengps
        39
    opengps  
       2018-06-18 05:43:45 +08:00 via Android
    总会遇到些奇葩情况的,你可以当探索者去爬一遍前人爬过的坑,总结出同样的结论
    Syaoran
        40
    Syaoran  
       2018-06-18 05:55:32 +08:00 via Android
    个人觉得频繁切换输入法好麻烦……
    514656282
        41
    514656282  
    OP
       2018-06-18 06:09:09 +08:00 via iPhone
    @fuermosi777 中文也是一整个词的跳转
    514656282
        42
    514656282  
    OP
       2018-06-18 06:09:48 +08:00 via iPhone
    @Perry 支持自动补全
    swkl86
        43
    swkl86  
       2018-06-18 06:42:11 +08:00 via Android
    不反对,但是有一天突然某个业务场景这样判断
    if(status == 网络连接失败)
    emmmm 确定不奇怪麽? enum 当做字符串处理?
    数据库库字段中文?
    好吧,感觉好多人做过,但总感觉坑比体验多
    感觉这个属于团队规范问题,以前也想过类似情况,但是后面被 pass 了。
    因为代码不是你一个人维护,编码导致的风险隐患比想象中的要高,假如说给外界接口,成本更加高昂(维护成本)
    你的痛点是在于对接的时候交流开发和维护成本高昂
    你是希望通过提升开发体验降低对接难度
    但是这侧面也会导致增加各种隐患风险和维护成本

    总之个人感觉 code msg 基本够用,如果不够,或者希望更详细的提示可以考虑开发环境判断,多个其他输出方式或字段
    Cambrian07
        44
    Cambrian07  
       2018-06-18 07:05:16 +08:00 via Android
    所以,易语言的春天到了吗?
    xingstar
        45
    xingstar  
       2018-06-18 07:14:18 +08:00 via Android
    抱歉,总觉得难以接受
    PythonAnswer
        46
    PythonAnswer  
       2018-06-18 07:31:34 +08:00 via iPhone
    自己写的小工具,有很多注释是中文,没问题啊,整理思路。
    vjnjc
        47
    vjnjc  
       2018-06-18 07:55:58 +08:00 via Android
    感觉 enum 那部分你随便呗,对接接口 HTTP 那层确定好就好
    nicevar
        48
    nicevar  
       2018-06-18 07:57:59 +08:00 via iPhone
    @gamexg 不是统不统一编码的问题,是 ide 有编码检测,vs2003 有个坑人的地方,会自动修改 utf8 的 bom,加上 eclipse 以前有一个常年存在的 bug,当前显示的文件并不是活动文件,很容易出错,并不是个别现象
    0xcb
        49
    0xcb  
       2018-06-18 08:08:17 +08:00 via Android
    我见过一个新入职的这么写,然后两个月个月什么也没做出来走了。
    514656282
        50
    514656282  
    OP
       2018-06-18 08:22:17 +08:00 via iPhone
    @JCZ2MkKb5S8ZX9pq 说出了我很多没说出来的。。实际开发中很多人用的英文并不准确,后面加又要加中文注释来说明 各种英文数字中文的转换确实让人累了
    shynome
        51
    shynome  
       2018-06-18 09:37:51 +08:00 via Android
    中文切输入法麻烦,反正我肯定忍不了,要么你走要么我走
    likuku
        52
    likuku  
       2018-06-18 09:52:04 +08:00   ❤️ 1
    给人类用户看的提示信息什么用中文写挺好的,尤其用户是非技术人员+多年不用英文 /技术英文 的人。

    其它么,代码里 变量,注释,用中文,写码时切换输入法麻烦,
    乱码的隐患始终存在,且有些技术用语,中文没有统一公认的说法,容易引起歧义。
    lonenol
        53
    lonenol  
       2018-06-18 09:57:45 +08:00   ❤️ 1
    展示的文案竟然是固定的么。。。
    514656282
        54
    514656282  
    OP
       2018-06-18 09:59:09 +08:00 via iPhone
    @lonenol 我在上面已经回复了很多,不是直接给前端展示用的
    whypool
        55
    whypool  
       2018-06-18 10:28:13 +08:00
    一次警告,二次开除
    代码必须规范,命名必须规范,包括拼音命名甚至各种 123,review 必须改,改不了就走人
    msg7086
        56
    msg7086  
       2018-06-18 10:58:51 +08:00
    看团队要求。团队觉得 OK 就 OK,不行就不行。
    我们组里以前还有亚美尼亚人,他要是标识符写个亚美尼亚语,我们大概心态就要崩了。
    thinkif
        57
    thinkif  
       2018-06-18 11:02:42 +08:00 via iPhone
    变量不能用中文,但个别的枚举可以用中文,可读性好,使用也方便,枚举最终对接出去的多是数字的部分所以没问题,而且现在 IDE 对编码支持都非常好了。

    其实不光是中文,工作中接触过德国、意大利和丹麦的工程师,他们也会使用母语来命名一些不好描述或者不方便翻译成英文的地方。
    silhouette
        58
    silhouette  
       2018-06-18 11:21:48 +08:00 via Android
    一般都是 status 是个数字表示状态码吧,然后给一个文档标注每个数字代表什么比较好?
    lotem
        59
    lotem  
       2018-06-18 11:32:16 +08:00
    代碼裏用不用中文,看使用場景。
    某又要搬出中文命名的經典樣例了:
    https://github.com/kionz/ime-table-builder/blob/master/src/Cangjie5.js
    liuxu
        60
    liuxu  
       2018-06-18 11:49:17 +08:00
    主要是大家被一些语言的中文处理恶心到了,还有中文编码问题,例如 gb2312 与 utf-8,bom 头。。
    maxthon
        61
    maxthon  
       2018-06-18 12:00:45 +08:00
    http://www.globalnerdy.com/wordpress/wp-content/uploads/2014/06/poopy-swift-code-example.jpg

    现在 unicode 支持都很成熟了吧,emoji 都可以用来做标示符了
    所以还是看项目需要以及项目规范
    有些中文术语真的很难用英文表达
    murmur
        62
    murmur  
       2018-06-18 12:12:54 +08:00
    @liuxu 这早就不是问题了 中文你还能看懂 貌似 php 已经有用不在人阅读范围内的 unicode 字符做混淆了
    lrh3321
        63
    lrh3321  
       2018-06-18 12:28:42 +08:00 via Android
    团队觉得 ok 就行,我是觉得中英文切换打字太麻烦
    WispZhan
        64
    WispZhan  
       2018-06-18 12:34:30 +08:00 via Android
    明显不规范,Java 枚举本来就可以带成员域,你加个 string 类的 name 域都比直接用中文好。

    public enum Status {
    Connected(“网络恢复”), Disconnected(“网络断开”);
    private string name ;
    Status(string name){
    this.name=name ;
    }
    public string name(){
    return name ;
    }
    }
    DOLLOR
        65
    DOLLOR  
       2018-06-18 12:34:37 +08:00
    看你们团队的想法吧。
    反正这个年代已经没必要纠结所谓的乱码问题了。
    Lonely
        66
    Lonely  
       2018-06-18 12:35:06 +08:00 via iPhone
    奇葩
    murmur
        67
    murmur  
       2018-06-18 12:36:39 +08:00
    @likuku 问题是又有专业英语知识又有编程技能的程序员少之又少 绝大多数人在面对专业术语都是去查字典 他也不知道哪个对
    这种情况下用中文命名反倒是效率最高的 直接照着需求说明书打就行 省了大笔想变量名的时间
    514656282
        68
    514656282  
    OP
       2018-06-18 12:39:44 +08:00 via iPhone
    @WispZhan 给前端返回的时候,前端又看不到你这个成员变量,英文单词没取好的时候,也给别人带来很多困惑
    swim2sun
        69
    swim2sun  
       2018-06-18 12:55:41 +08:00
    个人或团队爱怎么用就怎么用,但是既然拿出来问了,我还是忍不住说:请遵守 Java 命名规范。枚举就是要大写字母加下划线命名,如果非要用中文,那么为什么不用得彻底点?类名、变量名都用中文?你可以体验一下....
    public enum 状态 {
    网络断开, 网络恢复
    }
    hilow
        70
    hilow  
       2018-06-18 13:03:12 +08:00 via Android
    有种情况会很恶心。
    你的模块给另外一个模块传输的是 protobuf 再内嵌 json 数据,然后这个模块输出日志时,有可能是编码过的 utf8 字符
    zjyl1994
        71
    zjyl1994  
       2018-06-18 13:22:32 +08:00 via Android
    返回给前端的 message 写中文不反对,code 写中文就不好了吧。
    WispZhan
        72
    WispZhan  
       2018-06-18 14:12:23 +08:00
    @514656282 自定义一个枚举序列化工具不就成了么,多大的事。如果是 Jackson 或者 gson 本身就自带了。 多看看文档和最佳实践。
    xiaowangge
        73
    xiaowangge  
       2018-06-18 14:26:19 +08:00
    i18n 国际化怎么办?

    万一项目大火,国外业务也要开展呢
    hand515
        74
    hand515  
       2018-06-18 14:38:33 +08:00
    切换输入法不累吗。
    514656282
        75
    514656282  
    OP
       2018-06-18 14:45:22 +08:00
    @hand515 想英文更累一点
    Humorce
        76
    Humorce  
       2018-06-18 15:29:48 +08:00
    参考 HTTP 状态码
    atcdef
        77
    atcdef  
       2018-06-18 16:56:38 +08:00
    中文完全没问题,这里的问题只是在于输入上的麻烦,你得切换输入法。如果有某个 ide 像易语言那个 ide 那样,支持中文首拼上屏,那我也会用中文作为变量名之类的。
    copysunday00
        78
    copysunday00  
       2018-06-18 17:29:16 +08:00
    难以接受,目前在公司还没发现
    mio4kon
        79
    mio4kon  
       2018-06-18 17:35:13 +08:00
    代码补全,切换输入法相当麻烦.
    cYcoco
        80
    cYcoco  
       2018-06-18 18:16:52 +08:00
    宁愿代码英文注释中文的 因为编码问题真的很捉急。。。。但是 emun 写 0,1,3 不如返回 int 好了
    tulongtou
        81
    tulongtou  
       2018-06-18 19:07:09 +08:00 via iPhone
    如果是一个开源项目,中国人贡献汉语代码,韩国人贡献汉语代码,阿拉伯人贡献阿拉伯语代码。。。。。后果不忍直视
    wwqgtxx
        82
    wwqgtxx  
       2018-06-18 20:16:59 +08:00
    @tulongtou “韩国人贡献汉语代码”是个什么套路(手动滑稽)
    tulongtou
        83
    tulongtou  
       2018-06-18 21:22:04 +08:00 via iPhone
    @wwqgtxx 打错了,韩语代码 哈哈哈
    fhefh
        84
    fhefh  
       2018-06-18 22:08:36 +08:00
    一般都是这么干来着~
    {"status": 0, "msg":"你好,欢迎来到 V2ex"}
    zhuangzhuang1988
        85
    zhuangzhuang1988  
       2018-06-18 22:10:02 +08:00
    挺好的比不知所云的拼音,缩写好。
    514656282
        86
    514656282  
    OP
       2018-06-18 23:44:44 +08:00 via iPhone
    @fhefh 所以这个时候就需要跟前端解释 0 是什么意思
    sd
        87
    sd  
       2018-06-19 02:45:17 +08:00
    可读性不高的问题,我也是赞成使用 status 和 msg。
    考虑到前端对接难度的问题,我建议写好 API 文档,API 文档应该是必须的。
    littlebaozi
        88
    littlebaozi  
       2018-06-19 08:52:47 +08:00
    用数字吧,注释写明白
    66beta
        89
    66beta  
       2018-06-19 08:55:43 +08:00   ❤️ 2
    ”后端不写文档”

    头痛不能医脚
    murmur
        90
    murmur  
       2018-06-19 09:06:03 +08:00   ❤️ 1
    @tulongtou 这种代码一般不会涉及业务和专业术语
    这楼太多人过度关注枚举这个点
    而没考虑其他地方用中文
    jyf
        91
    jyf  
       2018-06-19 09:44:11 +08:00
    我比较喜欢用英文和数字 但是我不会去反对你用中文 你这个是提示 提示越清晰越好
    楼上有人说编码问题 这个年代还用 gb*的基本很罕见了 大家都是 utf8 没啥不一样的
    micean
        92
    micean  
       2018-06-19 09:55:35 +08:00
    要是名字不好起呢?
    中文 enum 的最大好处是智能提示一出来就明白是什么意思
    至于用数字还是字符串,可以用成员变量解决
    yimity
        93
    yimity  
       2018-06-19 10:10:56 +08:00
    @murmur 不用改的情况下,为什么要改?系统(架构)设计就这么脆弱,这么简单的都不能扩展,都要改?
    yimity
        94
    yimity  
       2018-06-19 10:11:42 +08:00
    @514656282 不是给前端显示,其他地方要用是不是也要处理?同样的道理嘛。
    adablue77
        95
    adablue77  
       2018-06-19 10:17:21 +08:00
    10001 用户验证失败 ... 直接提示用户错误信息
    10002 您的余额不足 ... 给予提示 并显示余额和充值按钮
    10003 用户登陆超时 ... 提示错误 过 N 秒后跳转到登陆页
    10004 您的权限不足 ... 直接提示用户错误信息
    假设上面是一个接口可能返回的集中数据
    现在不返回状态码了 请问楼主前端如何实现流程呢
    iblessyou
        96
    iblessyou  
       2018-06-19 10:32:00 +08:00
    @fuermosi777 和你学了一技,用这么久居然不知道 /笑哭
    rocbomb
        97
    rocbomb  
       2018-06-19 10:35:42 +08:00
    已经有公司开始中文编程了
    没任何问题, 他们用的是 C#
    当年的帖子没了, 找个转载
    http://www.cnblogs.com/kernel64/archive/2014/06/06/3771658.html

    输入法把全角改成半角, 没有任何问题

    我们公司没那么激进,只是注释全部都是中文
    目前没有任何问题
    murmur
        98
    murmur  
       2018-06-19 10:37:32 +08:00
    @yimity 我不知道你回的哪一条
    但是这个只是楼主例子的 enum 不规范
    反正 enum 就是 int 如果你不习惯 java 的 enum 写法 直接写一个类 里面写一堆中文 static 变量指向你的状态码就可以
    他是变量不就可以扩展 可以 IDE 重构了么
    我还是哪句话
    这个楼里太多人纠结枚举的例子 中文既然可以拿来做数据库字段 那以后如果有规范的话拿来做变量名甚至函数名也是可以的
    起名一直是个很纠结的问题 尤其是涉及到太专业你查字典就查不明白的东西
    lamCJ
        99
    lamCJ  
       2018-06-19 10:38:22 +08:00 via iPhone   ❤️ 1
    不怎么样:

    - 效率低:编码一天 输入法切换次数不能忽略
    - 沟通难:自己一队中国人可能无所谓 但是英文世界都能理解 更别提 i18n 了
    - 恐乱码:虽然你的编程环境对 unicode 支持很好 但是代码 /数据 可能会在各种各样的步骤 /环境 /编码中出现 最终格式无法保障 ascii 码大法好

    换成中文解决不了 “后端不写文档”的问题 也不能完全解决“更容易理解”的问题(人水平+必要的注释+文档才是) 也并没有解决“前端不方便对接”的根本问题(人水平+流程+文档)

    退一万步 命名用拼音也比中文好啊 …

    带有个人感情色彩的强迫症结论:要用中文就全部用中文(可惜还做不到)要英文就全部英文 半英半中的感觉就和听见有些人说中文说着说这飙几句英语单词一样 你懂的吧
    reus
        100
    reus  
       2018-06-19 10:39:36 +08:00
    我觉得不行,输入法切换太麻烦
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   984 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 18:50 · PVG 02:50 · LAX 10:50 · JFK 13:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.