如果想在 V2EX 获得更好的推广效果,欢迎了解 PRO 会员机制:
https://www.v2ex.com/pro/about

如果你经常使用铜币置顶主题,持有 V2EX Solana Token 会在每日签到时获得额外铜币:
https://www.v2ex.com/solana
ninechapter
V2EX  ›  推广

什么是正确的 Coding Style?

  •  
  •   ninechapter · Apr 28, 2016 · 4575 views
    This topic created in 3666 days ago, the information mentioned may be changed or developed.

    不知道你是不是也在工作中,看到一些操蛋的代码。

    例一:中英夹杂

    某天老板让 A 君实现给一个做算命行业客户的网站,由于易经里面有 5 行,于是 A 君变写了下面一段代码:

    enum FiveLine{
      Jin,
      Wood,
      Water,
      Huo,
      Earth,};
    

    请问里面的 Jin 和 Huo 是什么鬼?就不能好好用英文么?

    例二:各种费代码

    某天 D 君在办公室里面 debug 发现下面一段代码。

    if (a == true) {
      return true;} else if (a == false) {
      return false;}
    

    请问前一个工程师就不能好好写代码么?/(ㄒoㄒ)/~~ 下面一句话就可以搞定的,而且 a 是什么鬼,难道就不能好好定义一下变量么?万年之后谁知道变量 a 代表的什么意思 return a;

    例三:注释多余

    public enum ColorType
    {
      Green, 
    // 绿色
      Red, 
    // 红色
    }
    

    像这种代码,大家都非常直接的变量就已经说明了他的意思的,其实不需要注释。

    例四:无用的条件判断

    当某天 B 君浏览代码的时候,发现下面一个判断屹立在代码库里面。 B 君当时就想说一句,这段断码是几个意思。为了站位用么?还是为了增加代码量,让人哭笑不得😢

    if(false)
    {    xxxxx}
    

    例五:命名不清不楚

    某天 c 君加入新公司,熟悉公司的文档,看看公司的数据库架构,然后看到了公司的数据库命名,第二题 c 君便离职 了。。。他看到下面一段数据命名,不是你看了后会什么感觉。 数据库表的命名是

    Table0 , Table1 , Table2......Table3000

    那么平时,我们注意怎么样的代码风格呢?

    个人觉得,对于 Coding Style ,可以参考 Google 官方发布的代码风格指南: http://t.cn/zYyr2gd

    你在工作中遇到哪些操蛋的代码呢?欢迎吐槽!

    13 replies    2016-05-05 12:39:05 +08:00
    ninechapter
        1
    ninechapter  
    OP
       Apr 28, 2016
    下周三,我们将举办一场免费在线讲座,邀请拥有多年面试官经验的北美 IT 企业工程师,详细讲解 Coding Style.
    时间:北京时间 5 月 5 日早上 10 点
    报名网址: http://www.jiuzhang.com/seminar/?source=v2ex
    pimin
        2
    pimin  
       Apr 28, 2016 via Android
    麻烦发到推广节点
    lsmgeb89
        3
    lsmgeb89  
       Apr 28, 2016
    能注意编程风格的团队都不至于招这种水平的人进去……
    ivanlw
        4
    ivanlw  
       Apr 28, 2016
    为什么没有 Java 的翻译? https://google.github.io/styleguide/javaguide.html
    oglop
        5
    oglop  
       Apr 28, 2016 via Android
    例五 穆迪 也是这样的啊 又不影响他们赚钱
    zixu
        6
    zixu  
       Apr 28, 2016
    例 2 没有说语言环境,如果是在 js 中直接 return 和判断后 return 是不一样的,代码是 if(){return}else if{return},而不是 else{return},如果在 js 中用可能别有用意也说不定。比如 js 中: var a='abc'; a == true;这个结果是 false ,但是直接 return 之后使用 if('abc')是 true ,并且两者的类型也不一样。
    workwonder
        7
    workwonder  
       Apr 28, 2016 via Android
    错别字太多了
    4641585
        8
    4641585  
       Apr 28, 2016 via iPhone
    拉到最后发现竟然没推广链接,再往下看竟然在回复区
    mdzz.png
    aivier
        9
    aivier  
       Apr 28, 2016 via Android
    @zixu JS 没有 enum ,在 function 外面返回都是同一个反应
    yoa1q7y
        10
    yoa1q7y  
       Apr 28, 2016
    又是套路
    codeartisan
        11
    codeartisan  
       Apr 28, 2016
    好牛逼的代码
    g0thic
        12
    g0thic  
       May 5, 2016
    少一点套路,多一点真诚
    novaeye
        13
    novaeye  
       May 5, 2016
    FiveLine 其实应该是 FiveElements
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3197 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 62ms · UTC 14:30 · PVG 22:30 · LAX 07:30 · JFK 10:30
    ♥ Do have faith in what you're doing.