学cs作软件的两个问题回答-无论你是啥专业出身的
1)转去学计算机computer science,将来从事IT软件行业,其实入门很容易
基本上,学个data structure with C++ or Java,就算正式入门了,而且你不需要了解复杂的数据结构,只要了解了list, array, tree等基本知识就可以了,然后学点object oriented语言(java or c++),基础就够了。数据结构和java编程很基础,所以有无数课本,讲的清楚易懂的课本也不少,如果你不知道什么课本好,自己挑些计算机系的教授主页,看他们推荐的课本,被使用次数最多的,就是最好的。
有时间的话,再学networks, operating systems, database, software engineering,你的知识结构就很不错了,而且也不需要学的多么深,了解基本概念就是了。听上去又多了四门,但是学习量也不算很大,比如database,stanford教授的经典课本A first course in Database systems,读起来更是流畅、易懂,毫不夸张的说,即使是文科生,读起来都不难,跟读本散文集似的;andrew tanenbaum写的教材Computer Networks和Modern Operating Systems也是如此,我当年尚在学校读书,消遣的时候,都偶尔翻翻这两本书,研究一下他老人家是如何把知识讲清楚的 - 这类优秀的教材,都能把复杂的知识用平易的语言讲好,不需要科班出身,就能看懂了,这也正是它们优秀的地方。你遇到的,最多是少数生僻的专业词汇,对于考过G的人来说,学点新单词不应该是问题。
不晓得现在国内的同学用什么课本,Warald觉得直接读英文原版教材就可以了,其实英文原版解释的更清楚,更容易懂;国内翻译过去的,或者是些纯国产的课本,读起来才费劲,别被谭浩强们编写的烂教材折磨,英文教材有好多写的很好的。另外,这里说的是“入门”,至于如何才能学好学精,那需要你结合自身的情况,在学习期间不断提高了;并不是说只要入门,就万事大吉了。
美国这里学啥专业出身的,都有转cs做软件的,机械、化学、物理就不用说了,本科学日语、中文甚至原来在国内做护士的,都有人成功转行的;Warald刚开始工作的时候,组里有三个中国人是senior/principle software engineer,一个北师大物理本科,一个厦大中文本科,一个武大管理类(好像是市场营销)本科;新东方元老王强那种文科转行计算机的例子,从他那个年代,到我那个年代,再到您这个年代,美国一直遍地都是。
2)现在打算读cs的人的确越来越多
根据warald掌握的信息,好多学校,今年CS的大课和基础课程,修课的人数都爆满,基本上是大批新生来了以后,所有课程都迅速被填满了。我在博客里清楚的说明IT软件是现在美国国际学生最容易就业的方向,你咨询了解就业形势的师兄师姐,也可以得出相同结论:目前就业最好的专业,就是CS;软件类就业明显好于其他任何专业、任何方向。
我以前有客户,学化工的,因为当初学校申请的好,computer science的课程比较丰富,而且工程学院各个项目也都可以交叉选课,于是她想方设法上了很多cs的课程,对后面找到软件类的工作很有信心。
根据我掌握的信息,这两年有些学校的确呈现两个”凡是“原则:凡是找到工作的,基本都是cs的;凡是学cs的,基本没有找不到工作的。-- 注意,Warald没说美国是个学校都能满足这两个原则,尤其是第二个 :p
的确,转专业是有难度的;cs不是人人都能学好的;大家都学cs,都做软件的话,cs的就业率肯定要下降;转cs做软件,并不能保证你将来会找到工作。不过,现在的大方向、大形势就是这样子。国内认为做金融最有前途,大家都抢着学金融;而在美国这里,做软件最有希望留下,最有可能获得工作经验,自然就是竞争的焦点了。
很明显,学cs找软件工作的浪潮已经掀起来了。这就是现实,无论你喜不喜欢。
– Warald (Email: [email protected])
同步更新博客Blog: http://www.1point3acres.com/和http://blog.sina.com.cn/warald
欢迎转载, 转载必须保留我的ID、Email和Blog, 否则视为侵权, 谢谢合作!