版权声明:可以任意转载,但转载时必须标明原作者charlee、原始链接http://tech./2007/04/12/how-to-be-a-good-programmer/以及本声明。
这是前一阵子给新人讲perl时顺便聊的一些废话。暂且存放在这里。 关于自学程序员这个行业需要不断地学习、充电。有人说过,现今的知识体系在20年之后就会成为一堆垃圾。注意这是指整个IT行业说的,具体到某个人的话,可能五年后你的知识就没用了。所以要不断地开阔眼界,学习知识。 那么如何学习?我认为最重要的就是学会搜索。如今,你不会编程没关系,不会配服务器没关系,只要你会搜索,你就是好的程序员。Web2.0的发展,使得论坛、个人网站等过时,维基、博客流行起来,而大量有价值的技术信息都分散在成千上万个博客上。因此,你得学会用好搜索引擎,推荐使用Google。大部分人喜欢用百度,我无可厚非,不过个人认为,对于程序员来说,Google的准确性要比百度高很多。 那么如何使用Google?我总结了下面的几种情况:
另外还有一个 Google Code,它可以搜索网上的源代码,想找程序例子时非常有用。网站地址请自己去搜索。 自学的第二个重点,就是要学会举一反三,严禁不求甚解。网上有人说按照某种方法能够解决某某问题,于是你就原封不动地照搬过来,结果问题依旧无法解决,于是你就给那篇文章的作者发信说“你的方法不对”啦“我这里不行啊”之类的话。程序员最要不得的就是这种态度,影响别人也耽误自己。别人提出的方法,你不能生搬硬套,而是应首先理解他为什么要这样做,这样做有什么道理,然后再根据自己的实际情况找出适合自己的解决方法。这样解决问题的同时自己的技术水平也会得到提高。 最后一点就是要多多关注新事物。这些年新概念、新事物不断涌现出来,如Web2.0、P2P、Ajax、维基、博客、阅读器、flickr、youtube,几天不看新闻就会觉得自己跟不上时代了。 在这里我推荐几个较好的技术网站,有条件的可以天天上去看看,了解一下技术发展情况。同样,网址自己去查。
关于技术许多人以掌握多种语言、掌握多种技术为荣,会C、C++、VC、Delphi、VB、PHP、Perl、Oracle等似乎就很了不起。的确这样的人才不可多得,但我想告诉你的是,这不应该是你追求的目标。 技术的发展是无穷无尽的,尤其是现在,创立一门编程语言、一个程序库、一个开发框架是个很简单的事儿,有点技术基础的人谁都能做。而要想将这些技术全部学会是不可能的。你应当着重学习技术背后隐含的思想。弄明白了思想,就很容易举一反三,再学其他技术就非常容易了。 例如,学C++时不应该花太多时间在C++本身上,而应该重点掌握面向对象概念。学会了面向对象,再学Java、Python、Ruby等就非常容易。学过Java的人应该知道Struts这个开发框架,弄懂Structs的思想,再学其他开发框架时就能举一反三。 建议大家没事儿学学下面的技术:
另外,我们学技术不仅是为了工作,更是为了解决实际问题。这里有个原则:同一件事而不要做第二遍。用好Excel、Linux等工具,让计算机帮我们做重复的工作,不仅能大幅提高效率,本身也是件很有趣的事儿。 结语 |
|