分享
 
 
 

态度决定一切——读《Writing clean code》有感

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

回想读过的这本书,内心的感受只有一句话:态度决定一切!

在网上经常可以看到有人问“如何才能学好编程?”或者“为什么国内程序员不如国外程序之类的问题?”其实看看《Writing clean code》这本书就知道了,对于assert的编写和使用,作者用了整个第二章来描述,而看似只是简单的一个断言宏,实际工作中随时有可能使用到,而且使用的方式也很有技巧可探讨,试问国内又有多少人能做到刨根问底的研究这个小小的宏?这就是态度问题了。很多人热衷于跟风各种各样层出不穷的新技术,而对于计算机的本质:体系结构、编译原理……等真正的计算机科学技术不屑一顾,在别人架构的华丽平台上孜孜不倦的堆着代码,还认为自己非常牛B,只在网上抱怨怀才不遇或者讨论那种语言更有“钱途”这类的废话。

作者还举过一个memcpy()函数实现的例子,我印象中很多公司招人的时候喜欢要求应聘者写一个memcpy()函数,来考察其对语言的理解程度,很多人都写成如下方式:

void memcpy(void* pvTo, void* pvFrom, size_t size)

{

void* pbTo = (byte*)pvTo;

void* pbFrom = (byte*)pvFrom;

if(pvTo == NULL | | pvFrom == NULL)

{

fprintf(stderr, “Bad args in memcpy\n”);

abort();

}

while(size-->0)

*pbTo++ == *pbFrom++;

return(pvTo);

}

几年前我第一次读《Writing clean code》前试着写的时候更加“惨烈”,甚至连指针是否为NULL都没有处理都就直接移动了,更加没有考虑维护如下的debug版本:

void memcpy(void* pvTo, void* pvFrom, size_t size)

{

void* pbTo = (byte*)pvTo;

void* pbFrom = (byte*)pvFrom;

#ifdef DEBUG

if(pvTo == NULL | | pvFrom == NULL)

{

fprintf(stderr, “Bad args in memcpy\n”);

abort();

}

#endif

while(size-->0)

*pbTo++ == *pbFrom++;

return(pvTo);

}

在读过《Writing clean code》后只剩下羞愧:

void memcpy(void* pvTo, void* pvFrom, size_t size)

{

void* pbTo = (byte*)pvTo;

void* pbFrom = (byte*)pvFrom;

assert(pvTo != NULL && pvFrom != NULL);

while(size-->0)

*pbTo++ == *pbFrom++;

return(pvTo);

}

之前根本没有过考虑过太多代码的健壮性与简洁性,只以为自己功能实现就完事ok,从此才知道自己的代码离优质的商业代码的差距有多远。这就是态度的问题:为什么开始的时候不能考虑那么多?因为没有用心去面对这段代码!记得以前老师说过做计算机开发很重要的一点就是用心,设计代码的时候要把自己的思维计算机化。如果这段代码代表我的身体,肯定我不会容忍缺胳膊少腿的情况出现,我没有用负责的态度面对代码,所以才造成残缺不全的代码出现。

在大学的时候大家都比较毛躁,估计冲动是现在大学生的通病了吧,以我所见,计算机系能静下心来写代码的学生都不多,接触过过大型系统开发的更加少,大家都指望着热门专业(考大学时候计算机是热门)毕业后就能坐在宽敞的空调办公室里体面轻松的拿着高薪享受小资生活,而没有以严谨的态度面对计算机开发工作,偶尔一点热情坐下来写几行代码的时候却烦心于debug过程,计算机永远都只认识0和1,它不会欺骗人,对就是TRUE,错了就是FALSE,不可能推个云手来体现一下中庸之道,做计算机开发只能以负责的态度面对,不然趁早改行去做行政单位,若干年后领导就可以对手下人指手画脚了!

记得大学的时候有同学以“反正听不懂”为由逃课出去玩,教导员屡禁不止,正可谓:道高一尺,魔高一丈!最后只能无奈的说:“听不听得懂是能力问题,去不去是态度问题,就算你听不懂,至少你也给老师一个好点的印象,考试才能手下留点情面……”其实编程是一样的道理:不会可以学,世上无难事,只怕有心人。但是如果没有心,即使是小水沟也跨不过去。当然人总是有惰性的,很多时候我也想偷懒,不想坚持下去,但是能不断提示自己分清楚主次,锻炼自己严谨的态度是最重要的!

10多年前最初接触286,只是把它当作单显游戏机而已,写几十行的简单BASIC程序只能依靠兴趣来维持。到今天,专门从事网络方面研发的工作也已经超过3年了,以后即使我不再从事计算机开发工作甚至离开计算机行业,但是无论做什么事情,我都坚信一点:态度决定一切!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有