coding本来就是就是门艺术,不懂它的人看到什么样code都一样,只有懂它的人才能看出好的code的美。大师级的艺术家随手的作品都很美,所以在我们没有成为大师级艺术家的时候我们就需要对我们的code不停的进行重构,在重构当中去不段的成长,在重构中不段让我们的code变的更美。有些人可能会说代码重构没有多大意思,有重构代码的时间还不如把时间用来多写点代码,其实写烂代码的人你再写多少代码还是那么烂,个人觉得不是在产正能量而是在做负能量。对于做小项目的人来说可能无所谓,代码再烂只是用在这个项目上,后面的项目又重新写代码,但是对于做大项目和长期产品的人来说不同,你需要在前期的需求上不断的磊代码,如果前面的代码写的烂,到了后边磊不了多久代码就会崩了,每天做的事不是在做新的需求,而是在不停的解bug。所以我个人觉得我们有时间就应该把我们写的代码进行不停的重构,函数级重构、模块级重构、框架级重构,只有把函数级重构做好了才能为模块级重构、框架级重构打好基础。在我们自己review代码的时候,如果很难看懂函数功能的话,多半这个函数是有问题的,也就是需要我们去重构的。每天重构一点,日积月累效果就出来了,你会发现自己看护的代码问题单越来越少,加班时间也会越来越少。很多公司很推崇救火英雄,但是我个人觉得那种随时都在救自己火的事就没有什么意愿了。
昨天学习了点重构的知识,也尝试了下随便把自己以前写的一个函数拿来重构了一下:
重构前的代码:
static int FBShowPixel(int iX, int iY, unsigned int dwColor)
{
unsigned char *pucFB;
unsigned short *pwFB16bpp;
unsigned int *pdwFB32bpp;
unsigned short wColor16bpp; /* 565 */
int iRed;
int iGreen;
int iBlue;
if ((iX >= g_tFBVar.xres) || (iY >= g_tFBVar.yres))
{
DBG_PRINTF("out of region\n");
return -1;