【笑死宝宝啦】你在公司项目里面看到过哪些操蛋的代码?
发布于 3 个月前 253 次浏览 来自 随便聊聊

来自:知乎


原问题:你在公司项目里面看到过哪些操蛋的代码?

String result;

......

return result.toString();

算吗?


尽情吐槽吧



from:Cyandew


if (m_doc->isModified() == true)

{

    for (int i = 0; i < 100; i++)

    {

        save();//Save the document for 100 times to ensure it has been saved successfully.

    }

}


不知道谁写的,总之我都看哭了



from:匿名

enum FiveLine

{

  Gold,

  Wood,

  Water,

  Fire,

  Earth,

};

看枚举名字不知道五行(hang)是什么鬼,看了枚举内容恍然大雾,原来是五行(xing)……



from:匿名

以前所在公司做激光雕刻软件,客户对雕刻速度有要求,于是乎大神把显示在客户端的所需时间乘上4/5。后来软件交给我维护,重写了界面,新版本到了客户手里雕刻速度变慢了,无论怎么优化雕刻算法,都不能达到原来的雕刻速度。 

后来忘记是怎么看到那个* 4/5了,真是买了表的



from:李旭东

<div class="div1">

    <div class="div2">

        <div class="div3">

            

        </div>

        <div class="div4"></div>

    </div>

</div>


…………


<div class="div27">

    <div class="div28">

        

    </div>

</div>


…………


<div class="div396">

    <div class="div397"></div>

</div>


…………


<div class="giveMeAFuckingClassName">

</div>



from:白砂糖

// 以下所有left代表右

// 以下所有right代表左



from:Kun Andy



public enum ColorType

{

Green, // 绿色

Hong, // 红色

}


//......

this.curColortype= ColorType.Hong;

......

毫无违和感! 英语和汉语的激烈碰撞,一时愣是没读懂代码,“Hong”为何物,你看注释才恍然大悟!犀利

可能是绿的拼音(lv) 有点像等级,所以为了防止歧义,用了Green!赞一个!

!!!!!!!!!!!!!

程序员很可爱,我爱程序猿大家庭!

这些蕴含智慧的代是礼物也是惊喜!

可以帮你拉这么多赞!感谢!

!!!!!!!!!!!!!

真爱身边的程序员!

爱他们



from:匿名

我软有不少代码看上去挺好的但是会被标识成操蛋,这都归功于各种静态检查工具。


在我软代码里面起个变量名叫WhiteList都会被自动发bug,因为用White来表示允许就属于种族歧视,一定要改成AllowList。我会告诉你我们因此还真的改了服务接口而且还要做向下兼容吗?


还有变量名叫country也会被查,因为正确的说法是country and region。


我不是说public的类成员哦,private的都不行。


另外kill,dead之类的字眼都是有问题的。


当然你真的一定要用这些词你就得说明理由,然后加supression。


要像 [@vczh](/user/vczh) 那样变量起名bitch什么的那是要死一百遍啊。


所以你现在知道写点代码有多难了吧。



from:孙传武

有次看一项目源码,注释里有个warning。 


// warning: Do not make any changes here.

// I got confused why it can run successfully. PLEASE Do not make any changes before you figure it out.



from:匿名

变量命名

class UplaodDuiLie  // 上传队列


// Uplaod 非手误,完全原文。

// 为什么你们只吐槽 typo 而不吐槽中英文混合呢。。



from:myd7349

从长度上来说,完爆楼上各位的。感受下:


if(m_Str2.Find("'")>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find(':')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('/')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

 

if(m_Str2.Find('!')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('@')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('#')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('$')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('%')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('&')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('^')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('*')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('(')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find(')')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('/')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('|')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find(':')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('[')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find(']')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

    if(m_Str2.Find('{')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}

if(m_Str2.Find('}')>=0)

{

    AfxMessageBox("您输入的包含非法字符");

    m_Str2="";

    UpdateData(FALSE);

    return;

}


哪怕不知道 RE,也该知道 FindOneOf 啊?!!!!

就是再不济,也写个循环吧。

谨遵 DRY 原则的程序员看到这段代码受到了 1024 Kg 的伤害。


当然,还有什么:

一个线程回调函数函数写了 700 多行的事情咱就不说了。

一个小小的项目专门定义了名叫 Global.h/cpp 的文件来放置全局变量咱也不说了。一个小小的项目中一二百个全局变量咱也不说了,这些全局变量中大部分还是指针变量咱也甭说了!!!

我去哭一会去。


添加回复
回到顶部