Board logo

标题: 如何成为一个优秀的程序员? [打印本页]

作者: avatar    时间: 2010-2-26 01:37     标题: 如何成为一个优秀的程序员?

前些时候,老板交给我一份考核题,让我提意见.据说公司将用这它来考核公司员工的业务水平.我很快地浏览了一遍考核内容.无非是一些有关C++和JAVA 语言的小技巧.很象计算机专业本科生的期末考试题.我本人是不同意用这样的方法来考核程序员的.在我看来一个优秀的程序员就象一位心灵手巧的主妇,她可能没有上过厨艺学校,但只要她拿起锅碗瓢盆,就能作出美味佳肴,她可能没有做过室内装修,但只要她动动脑筋,便能就地取材,把一个小家布置得温馨别致.同样的道理,一个程序员,他可能还没有很多C++的实际操作经验,但是他如果具有一个优秀程序员的品性和知识准备,对计算机语言的本质有一定理解,那么无论是 C++还是JAVA也只不过是巧妇厨房里的一道小菜罢了.

那么怎样才能成为一个优秀的程序员呢?这就是我这里要讨论的内容.

工欲善其事, 必先利起器

中国人常说"巧妇难为无米之炊". 中国文化的圣人孔子也说:"工欲善其事, 必先利起器".意思就是说:一个做手工的人,要想把工作做得完善,应该先把工具准备好.程序员写程序,首先离不开文本编辑器.一个优秀的文本编辑器,不但能够大大提高软件开发的速度,减少软件的漏洞,而且能够使编辑过程不是那么枯燥.我觉得用EMACS编写软件,就好像在玩游戏,不同的键盘组合象变戏法一样产生奇异的效果.

目前软件开发界的编辑器很多.对编辑器的选择,很大程度上取决于程序员的习惯.有时候往往是一个偶然的机缘决定了他的嗜好和偏爱.我从事软件开发十多年,作了很多项目,接触了不少类型的编辑器(VIM, VISUAL STUDIO, ECLIPS)

我始终认为EMACS是最适合程序员使用的编辑器. VISUAL STUDIO界面呆板,无生气.图形界面常常繁琐而缺乏逻辑,要想将其个性化,更是十分困难.而且只能在微软的系统上开发,其局限性自然不说自明.ECLIPS很适合开发大型的JAVA语言程序,但使用者还是很容易落入图形界面繁琐的圈套里.VI( http://en.wikipedia.org/wiki/Vi )和VIM(http://www.vim.org)在UNIX世界很受欢迎,它尤其是UNIX系统管理员必不可少的工具.因为VI常常是很多大型 UNIX服务器上唯一具备的编辑器.程序员偶尔也会需要在这些大型服务器上编辑一些小文件,在这种情况,如果对VI或VIM一无所知,未免有些贻笑大方. 所以我的观点是:日常开发最好用EMACS,但必须对VI或VIM有一定的了解.比方说一些简单的指令,这样紧急情况下,不至于太过菜鸟.

EMACS 即Editor MACroS(宏编辑器文本编辑器). EMACS诞生于1975年的MIT, 最初由Richard Stallman协同Guy Steele共同完成. 自诞生以来,Emacs演化出了众多分支,其中使用最广泛的两种分别是:1984年由Richard Stallman发起并由他维护至2008年的GNU Emacs,以及1991年发起的XEmacs。 XEmacs是GNU Emacs的分支,至今仍保持着相当的兼容性。它们都使用了Emacs Lisp这种有着极强扩展性的编程语言.

http://www.gnu.org/software/emacs/网站上读者可以下载EMACS软件,同时,该网站还提供了大量的学习资源.如果你还没有完全被你过去的编辑习惯所控制,那么我建议你不妨静下心来,用两到三天的时间,认真阅读网站上提供的使用手册.边读边试着编写一些小程序.相信我, 这绝对是一笔一本万利的投资.它将使你终身受益.

先谈这些,有时间接着再写
作者: cy9459    时间: 2010-2-26 02:51

I don't agree with you, I think logical thinking is more important than the tools.
Tools one can pick up easily. A lot of times when I changed jobs, I had to use
whatever that company had. I do love Vi but I also use Microsoft tools. I used emacs long times ago.




欢迎光临 华人论坛 (http://yayabay.com/forum/) Powered by Discuz! 7.2