工作十年和十年工作经验

今天阅读代码的时候看见了一段代码,想到这是一个工作十年的老工程师的作品,不禁打了一个寒颤。

int ConOneChannelGrain(int iNum,int iGrain)
{
    short int iGainValue = 0x00;
    if(iGrain == 1)
    {   
        iGainValue = 0x20;
    }
    if(iGrain == 2)
    {   
        iGainValue = 0x120;
    }
    if(iGrain == 4)
    {   
        iGainValue = 0x220;
    }
    if(iGrain == 8)
    {   
        iGainValue = 0x320;
    }

    ioctl(fdFpgaVideo, SET_CMOS_CTRL, 0xaa);
    int iretGain;
    if(iNum == 1)
    {
        iretGain = ioctl(fdFpgaVideo, SET_CMOS1_GAIN, iGainValue);
        printf("Gain1 setting ok?:%d",iretGain);
    }
    else if(iNum ==2)
    {
        iretGain = ioctl(fdFpgaVideo, SET_CMOS2_GAIN, iGainValue);
        printf("Gain2 setting ok?:%d",iretGain);
    }
    else if(iNum == 3)
    {
        iretGain =ioctl(fdFpgaVideo, SET_CMOS3_GAIN, iGainValue);
        printf("Gain3 setting ok?:%d",iretGain);
    }
    else if(iNum == 4)
    {
        iretGain = ioctl(fdFpgaVideo, SET_CMOS4_GAIN, iGainValue);
        printf("Gain4 setting ok?:%d",iretGain);
    }
    else if(iNum == 5)
    {
        iretGain = ioctl(fdFpgaVideo, SET_CMOS5_GAIN, iGainValue);
        printf("Gain5 setting ok?:%d",iretGain);
    }
    else if(iNum == 6)
    {
        iretGain = ioctl(fdFpgaVideo, SET_CMOS6_GAIN, iGainValue);
        printf("Gain6 setting ok?:%d",iretGain);
    }

    return 0;
}

这段代码功能没有问题,变量的命名也非常的规范,但是这段代码在设计的时候完全没有走心,只是按照功能逻辑走到底,如果这样写代码,写十年也未必称得上十年工作经验;

在我们工作生活中不乏这样的人,做事只是草草了事,完成功能即可,功能三天完成,但是要花费十天进行优化、修改,这样既浪费了时间又毫无收获。参加工作之后,大多数人不久便有了家庭生活,所以学习的时间少之又少,工作过程中思考和学习似乎成了我们提高的唯一途径,如果工作只是敷衍了事,工作十年我想也不会有大的提高,只是见的东西多了罢了,对深层次的东西还是一无所知。

要想不被时代抛弃,唯有学习,多读书,多思考,阅读优秀的代码,站在巨人的肩膀上,才能有所提高,不追求名声大噪,但至少在工作中能不被后来者笑话工作十年写出这样的代码!

共勉!

你可能感兴趣的:(生活)