关于程序员性格的文章

来源:互联网 发布:淘宝上卖的吉他怎么样 编辑:程序博客网 时间:2024/05/17 00:59
 

软件开发中人们很少注意个人性格问题。自从 1965年Edsger Dijkstra的有里程碑意义的文章“程序开发是一种人类活动”发表以来,程序员性格被认为是合理的和有成效的研究领域,虽然有些题目如“大桥建筑者的心理”和“对律师行为的研究实验”看起来可能是荒唐的,而在计算机领域,“计算机编程中的心理”和“对程序员行为的研究实验”等题目则是常见的。

和书本知识比起来,软件开发中经验的价值要比其它领域小,这有几种原因。在许多其它领域中,基本知识变化缓慢,以致于10年前毕业的某人所学到的知识在现在仍没有什么变化。而在软件开发中,即使基本的知识也发展迅速,在你以后10年毕业的某个人可能学到了二倍
于你的有效编程方法,一些老的程序员往往被另眼相看,不是由于他们对某些特定方法缺乏接触,而由于他们在走出校门后对一些闻名的基本编程概念缺乏了解。
在其它领域中,你今天在工作中学到的东西可能对你明天的工作有所帮助,在软件开发中,如果你不改变你在使用从前的编程语言中的思维方式,或你在你的旧机器上得出的代码调试方式的习惯,你的经验将不值一文。许多进行软件开发的人往往花费时间准备上一次的战斗而不是下一次,如果你不因时间而做出应变,你的经验与其说是帮助倒不如说是一个阻碍。
除了软件开发中的迅速变化外,人们常从其经验中得出错误的结论,客观地对自己进行检查是困难的,你也可能忽视经验中使你能得出不同结论的重要之处,阅读其它程序员的研究材料是有益的,因为研究材料揭示了其它人的经验——它们都经过充分的精炼,你可客观地对其进行检查。
人们也往往荒唐地强调程序员的经验。“我们需要有五年以上C语言编程经验的程序员”就是其中一例,如果一程序员在头一、二年没有学C语言,第三年学也不会产生很大区别。这种类型的经验和其工作能力没有多大区别。
在程序开发中,知识更新迅速使此领域中“经验”处在一种奇怪的地位上,在其它许多领域,过去有着成功历史的专业人员,往往令人放心,并且因其一串成功的事情而得到尊敬。退步很快的人将很快和潮流格格不入。为了使自己有所价值,你必须紧跟潮流。对年青的、求知欲旺盛的程序员,他们往往在这点上有优势,而有些老的程序员认为自己有所资格了而讨厌一年接一年都要证实自己的能力。
最后一个问题是:如果你已工作了10年,你得到了10年的经验应当是真正的经验,你如能坚持不断地学习,你就能得到经验,如果你并不想学到什么,不管多少年你也学不到什么。
计算机迷
如果你还没有至少在一个相同的项目上花费一个月的时间——一天工作 16个小时;为了发现你的程序中最后一个错误睡眠中你也念念不忘它,你接连几天没日没夜地工作——即使你所编的程序并不复杂,那么你可能不会意识到编程中有某种令人兴奋的东西。
Edward Yourdon
这种对编程的痴迷纯粹是胡闹,并且几乎注定要失败。但是那些通宵程序员使你觉得他们是世界上最好的程序员,但是随后你不得不花费几周的时间来修正你在这短时间的辉煌中所带来的错误,你可能对编程非常热爱,但是你应能冷静地处理这个问题。
9 习 惯
好的习惯起作用是由于你为一个程序员所作的大部分事情是你在无意识中所完成的,例如,有时你可能会感到以前爱采用缩进循环,但是现在每当你编写一个新的循环时你不会这样想了。这种情况确实在建立程序格式时存在。你最后一次向自己提出这个问题是在什么时候?如果你已经有五年实际编程经验,你就存在较多的机会,如果你最后一次向自己提出疑问的时间在4年半之前,剩下的便是受习惯的支配时间了。
你在许多地方都存在习惯。例如,程序员往往爱仔细地检查循环变量而少检查赋值语句,这就使得发现赋值语句中的错误要比发现循环变量的错误困难一些。你能对别人的批评作出
友好或不友好的反应。你一直在寻找使代码可读或编码速度更快的方法,也可能你无意寻找它们,如果你不得不在可读性和编码速度方面作出选择,你每次都会作出相同的选择,当然,你并不是在真正选择;你是在习惯性地作出反应。
成为某方面好的或差的程序员,主要是靠你自己的所作所为,建筑师要通过建筑而程序员要通过编程。你所作成为习惯,决定了你的编程品行,最终,你的习惯好坏决定了你是否能成为一位好的程序员。
微软公司的 Bill Gates——董事会主席兼 CEO——曾说过,任何好程序员在开始的几年都做得很好。从那以后,程序员的好坏便基本定型了。在你进行编程很长一段时间后,很难见到你突然说“我怎样才能依循环进行得更快呢? " 或“我怎样才能使代码更可读呢?”这些都是好的程序员一开始便养成的习惯。
当你开始学习某一件事时,你应按正确的方式学好它,当你开始学时,你已对其进行了思考,并且你可在正确或错误的途径间作出轻易的选择,在你作过一段时间后,你对你所作的不太注意,此时“习惯的力量”会开始起作用。确保起作用的习惯是你所希望的。
如果你没有养成最有效的习惯你应怎么办?对这些问题没有一个明确的答案,以下是对此问题的部分回答,你无法用没有习惯取代坏的习惯,这就是为什么突然停止抽烟或节食的人如果不用一些别的什么替代的话会存在很大困难的原因。用一种新习惯代替旧习惯比完全戒除旧习惯要容易一些,在编程中,应尽力养成良好的习惯。你应养成在编写代码之前编写PDL(流程图)和在编译之前阅读代码的习惯,你不必为失去坏习惯而多虑。在用新习惯取代后坏习惯会自然而然消失的。
10 小 结
Ÿ 你的个人性格直接影响你编写计算机程序的能力。
Ÿ 最有明显作用的性格为:谦虚、好奇心、诚实、创造性和纪律,还有文明的“懒惰”。
Ÿ 高级程序员的发展和生成与天才并无多大联系,任何事情都和个人的发展有关。
Ÿ 令人吃惊的是,小聪明、经验、坚持和欲望既可帮助你也能妨碍你。
Ÿ 许多程序员不主动去吸收新信息和新技术,而是靠偶然地上获得一些新信息,如果你抽出少量时间学习别人的编程经验,过一段时间后,你将在你的同行中脱颖而出。
Ÿ 好的性格对养成良好习惯有很大影响,为了成为一位高水平的程序员,你应养成良好的习惯,其余的就会随之而来。

原创粉丝点击