听说林锐博士的<<高质量C++编程指南>>不错,对找工作很有帮助,打印一份看看.
随着越来越多的人加入程序员这个行业,程序员已经不是以前人们向往的白领职业了,要想在这个行业有所发展,至少在中国,想有所成就,就应该有一技之长,对某一领域有所精通。
随着计算机行业的不断发展和分支学科的不断出现,很难像以前再出现一个对计算机各个领域都很精通的人了,所以,对某一方向有所精通很重要。很多人夸夸其谈,乍一听对于计算机各个方面都知道,但仔细一问他就说不出什么了。
随着软件流水线般的进行生产,程序员(我是指之会写程序的人)越来越成为工厂里面流水线上的操作工人,依靠越来越强大和方便的开发工具和越来越容易上手的开发语言。这些人拼得是自己的经历和体力,他们是软件开发的最底层人员,即使干的好也不过是熟练的操作技工而已,因为他们只会使用别人开发出来的工具,自己甚至只知道怎么用,而不知道为什么和具体实现。造成这种情况的主要原因是开发工具的自动化和教育上的失误,特别是一些短期的软件培训机构,他们只教会了学生如何使用.Net或者Eclipse这样的容易上手的开发工具,最多再学习一下语言,有些人甚至连语言和开发工具都分不清楚(例如C++和VC++)这些都是软件行业迅速发展所造成的一些不良的影响和某些人急于求成的心理。很多人的基础不扎实就去写程序,它们对多线程,语言的底层实现和算法都不了解,这样,很难写出结构良好,效率高的程序。
所以,总结我以往写程序的经验和教训,我觉得:
1。打好基础,学好本质的东西,分清什么是科学,什么是技术,什么是应用。最上层的东西是会经常变化的,不要把时间大都花在那上面。
2。精通而不是什么都知道,却什么也不熟悉。后者是大忽悠。前者在有可能从程序员过渡到技术主管或者研发核心人员。
3。不要总用别人的东西,要有自己的成果。
4。学计算机不要急,慢慢来,一步一步,不要追求新技术名词,一位会几个新名词就来不得了,高手对底层都很熟悉的。不要浮躁。
5。要理论联系实际,学到的理论要知道有什么应用和怎么实现,到动手编程。
6。要有毅力,真正的工作很枯燥,但如果你投入进去就会很有趣。要珍惜每一分每一秒。
祝贺自己的blog开张,就像标题一样,DefeatSelf。