Chinaunix首页 | 论坛 | 博客
  • 博客访问: 618700
  • 博文数量: 172
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 1252
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-29 22:26
文章分类

全部博文(172)

文章存档

2011年(6)

2010年(7)

2009年(159)

我的朋友

分类: LINUX

2009-07-07 21:05:53

 编程是一个从来都不缺乏专家的领域。

 那么什么是所谓的专家级别呢?看看如今的招聘广告就知道了。“有经验”的程序员往往只要几年编程经验。如果谁有十五年以上编程经验,反而会被人怀疑他的智商。

 但是在计算领域,超过十五年以上编程经验的杰出人物却比比皆是。

    远的有:Kenneth Lane Thompson(UNIX的发明者), Dennis MacAlistair Ritchie(UNIX和C语言的发明者),Donald Ervin Knuth(《计算机编程艺术》的作者,TeX的发明者),Frederick Phillips Brooks, Jr.(《人月神话》的作者, IBM360计算机之父)(这些人都是ACM图灵奖的获得者)...。近的有:Richard Stallman(GNU之父),Kirk McKusick(BSD顶极黑客), Larry Wall(Perl之父)...我不想再举例了,太多了,一页都写不完。我想这已经足够驳斥那些带有偏见的人们的观点。 

    况且,十五年并不见得他已经学会了所有的编程知识。很多“有经验”的程序员搞不清楚C语言运算符的优先级。有更多“有经验”的程序员不清楚sizeof到底如何运用。看来,所谓的“有经验”,远没有达到专业的水准。

    在很多企业里,经理们从来不看代码。他们也不写代码。其实只要看少量的代码就能知道程序员的工作大环境。

 要成为专业程序员,以下是一些建议:

 1、阅读别人的程序,尽量开阔自己的视野。想想如果是自己,该如何实现。
代码孰优孰劣,只有对比了才知道。GNU工程里,向来不缺乏高质量的代码。BSD也是一个学习的例子。就算是UNIX的原始代码也有非常多值得借鉴的地方(高效,简洁,优雅)。

 2、如果看到“漂亮”的代码,想想他为何如此编写。或许能从别人那里学到东西。一个优秀的程序员,之所以称他优秀,是因为他的代码为人所称道。他们的编程思想就在代码当中。分析他们的代码,就是学习他们编程思想。

 3、每天留点时间,对自己的代码进行反思,提炼。Dennis Ritchie曾说过,“我一天中最有成效的工作就是删除了200行代码”。大师况且这样,又何论我们这些“平庸”的程序员呢?

 4、不满足用一种方法解决问题。解决一个问题可以有多种方法。选择一个最有效的方法是专业程序员的共同特质。

 总之,只有不断地努力,提升自己的能力,才能真正成为专业级程序员。

 十五年并不足以成为一个专业程序员。” --杰拉尔德.温博格

阅读(901) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~