微信号:programmer_club

介绍:程序员第一自媒体,与你探讨码农人生路上遇到的各类泛技术话题,定期为你推荐码农人生思考、感悟以及启迪!

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

2018-02-22 22:00 程序员之家

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

String result;

......

return result.toString();

算吗?


尽情吐槽吧


Cyandev,编程语言 本地应用开发 Android开发

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.

    }

}


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


侯杰,Code and Game

enum FiveLine

{

  Gold,

  Wood,

  Water,

  Fire,

  Earth,

};

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


匿名用户

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

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

李旭东,https://rrke.cc/

<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>


白砂糖,大三,傲娇的处女座程序猿,伪美工

// 以下所有left代表右

// 以下所有right代表左


Kun Andy,卖油翁

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

//......
this.curColortype= ColorType.Hong;
......

毫无违和感! 英语和汉语的激烈碰撞,一时愣是没读懂代码,“Hong”为何物,你看注释才恍然大悟!犀利
可能是绿的拼音(lv) 有点像等级,所以为了防止歧义,用了Green!赞一个!
!!!!!!!!!!!!!
程序员很可爱,我爱程序猿大家庭!
这些蕴含智慧的代是礼物也是惊喜!
可以帮你拉这么多赞!感谢!
!!!!!!!!!!!!!
真爱身边的程序员!
爱他们


匿名用户

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


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


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


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


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


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


要像 @vczh 那样变量起名bitch什么的那是要死一百遍啊。


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



孙传武,http://chuanwu.me

有次看一项目源码,注释里有个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.


绅士提督不笑船,我听见月光洒在湖面上。

变量命名

class UplaodDuiLie  // 上传队列


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

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


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 的文件来放置全局变量咱也不说了。一个小小的项目中一二百个全局变量咱也不说了,这些全局变量中大部分还是指针变量咱也甭说了!!!

我去哭一会去。


青苔,Web前端失足青年 https://github.com/Dannyxie

看见这段代码的时候,我拍了很久的掌

公众号内回复“1”带你进粉丝群!

 
程序员之家 更多文章 网易云音乐和QQ音乐达成合作,有什么影响? 程序员表白程序,开放源码在此! 程序员眼中的中国姑娘们 程序员专属的春节祝福 别人抢红包,程序员来探讨微信红包的算法实现
猜您喜欢 靠谱工程师长啥样 【附源码地址】Android高仿QQ及微信底部菜单的多种实现方式 第 1 期技术微周刊,又一家公司删生产数据库 无线端的弹幕实现方案 Python花式编程案例集锦(5)