那些年写过的最蠢的代码

好多好多年的码农,来记录一下好多好多年前写下的蠢蠢的代码

1.萌新语言混乱

        那还是IE6的年代,那还是model1的年代。jsp打天下,在里面掺杂着css、html、javascript、java等多种语言。才入职的萌新接到了第n个需求。要求将table中的row隔行换色,用javascrip实现。开心的写下了类似如下的代码。

<script language="javascript">  
    function xxxxxx(){
        var rowsSize  =10;
        for(int i=0;i<rowsSize;i+=){

            if(i%2==0){
                //XXXXXXXX
            }else{
                //XXXXXXXX
            }
        }
    }
</script>

  乍一看逻辑没问题吧,但是就实现不了要的效果。请来老师傅调试了两小时.....

  javascrip里面没有int,没有任何一个时刻那么恨弱数据类型.......

2.不讲武德大乱斗

        后来吧,大家觉得jsp太弱比了,出现了model2,mvc啥的。各种设计模式开始各种露头,前端影响最大的莫过于jQuery的出现。一个$('#id')太帅了有么有。俺也想用jQuery啊,但是项目组架项目经理不让添加jQuery库啊,只允许使用YUI。于是在小小的公共js里添加了小小的一行代码。

function $(id) {
    return document.getElementById(id);
}

var id = $("id");

     终于有一天,项目经理扛不住大家的呼声,准备集成jQuery。但是他不知道我上面代码的存在^_^.于是诡异的一幕出现了,$('#id')死活取不到值。项目经理开始加班集成jQuery。两天后项目经理无奈的说,大家用jQuery的时候,取值的时候不要用$符号,用 jQuery('#id')。

     后来过了有半年,有个小孩来接我的班。他看代码的时候问我。为啥别人代码里jQuery取值都不用$符,而你用$符?我给他留下了一个神秘的笑...

    多少年以后,老项目经理联系到我(找到我那段代码了)....

3.又见死循环

         后来model2越来越成熟了,ssh大行其道。hibernate多爽啊,不用写sql实现增删改查。但是实际情况吧,推崇不写sql的hibernate的我感觉挺傻的,谁家的业务就让你写单表的增删改查啊。接到一个需求,当某工单状态变为xx的时候,更新相关其他工单的状态为xx 。

//源代码肯定是没了。大概就这么个意思
List<ID> ids = Hutil.exceuteHql("select xx.id from xx where xx.status=?",xx);
String updateHql="update xx set status=2";
if(ids.size()>0){
    updateHql =updateHql+" where xx.id in"+StringUtil.list2String(lds,',');
}
Hutil.exceuteHql(updateHql);

   懂代码的大概都看明白了,update数据没添加where条件。但是结果可能和你想象的不一样。因为程序本身是逻辑bug,不是程序bug,它是能运行的。测试同学在测试环境测试他都能正常用的(测试环境数据量小)。但是到生产环境,数据有几百万,update执行不动了...当运营人员点了保存按钮之后,就是无限制的等待....所有人一起等待(锁表,当时的数据库是Informix)..... 所有 业务都停了。大牛们其上,查了一天,终于找到这段代码....

4.一切为了甲方

        公司决定我能抗点事了,派到某地航天做外包项目。实现了一个奇葩的需求。代码放在那正常项目里,看起来就很蠢。需求是领导不会使用浏览器的刷新功能。要求在页面上添加一个刷新按钮,还要红色好找...

<!DOCTYPE html>
<html>
<head>
    <style>
        .myButton {
            background-color: red;
            border: none;
            color: white;
            padding: 15px 32px;
            text-align: center;
            text-decoration: none;
            display: inline-block;
            font-size: 16px;
            margin: 4px 2px;
            cursor: pointer;
        }
    </style>
</head>
<body>
    <button class="myButton" id="refreshButton">刷新页面</button>

    <script>
        document.getElementById("refreshButton").addEventListener("click", function() {
            location.reload();
        });
    </script>
</body>
</html>

  大概是这样子

5.眼中有码心中无码

   

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值