>> 欢迎访问easn的博客:一个伪技术宅,关注互联网发展,研究用户体验。赚钱给老婆买我的百分之一女装

easn随笔录

记录easn的学习历程以及生活琐碎。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

确切的说,是想知道如何建立一个完善的成长体系,比如想搞C/C++,除了学好这门外,数据库和Linux要掌握到什么程度,三者之间是个什么样的关系?然后学android又是什么样的体系?除了IT方面的书,又有哪些书能让人成长成一个优秀的软件工程师呢?

首先大学期间你要踏踏实实学好基础课,主要集中在数学(离散数学),语言(基础语言,至少有一种),和软件工程方面的课程,如果时间充足的话可以多看看算法类的书籍,像《算法导论》和《TAOCP》这类算法书籍很多不受重视,像英语水平也被大部分程序员忽视了,但是很大程度上决定了你之后能够做的高度,程序员的成长受算法知识和英语的限制是最严重的。

另外你一定要至少有一个语言和一个平台学的很扎实,像C++或者Java,像Windows或者Linux,个人建议是Java+Linux这个搭配比较好,Java程序员非常好转型,而且即便混的再惨至少还有人要,Linux在非常锻炼一个程序员的水平。

大学期间还有两件事情一定要做,一个是至少参与一个开源项目,非常锻炼代码的阅读能力和协作能力,一个是至少自己写点什么,或大或小的项目总要有,课本上的东西和实际要做的还是有明显的差距。

还有就是可以尝试学一些比较先锋的知识,比如做iOS或者Android的开发,要知道现在这两个方面的工资远远超过了别的方向,而且创业的机会也非常大。还可以学一些相对还是不大众的语言,像Ruby,像Scala,像COBOL,这类偏门有的时候更容易找到工作,而且薪资也机会也不低。

如果你不是想做一辈子的普通程序员的话,稍微看看《人月神话》或者《代码大全》之类能够明显提升工程水平的书,在多留心一下人事方面和管理方面的知识,做几年就混到稍高一点的层次也是需要的。

说完这些我再回答你的问题:

比如想搞C/C++,除了学好这门外,数据库和Linux要掌握到什么程度,三者之间是个什么样的关系?

没什么明确联系,只是三者可以和到一起干活,除非你想做纯粹数据库或者Linux底层的工程师,否则这两个基本浅尝辄止就好,数据库找本SQL的书看看,Linux装个系统自己慢慢钻研,有问题先google如果找不到就上论坛上问。

然后学android又是什么样的体系?

先学Java,然后看Google的官方文档和范例就好了。

除了IT方面的书,又有哪些书能让人成长成一个优秀的软件工程师呢?

尽可能读书就绝对不是坏事,无论任何一个方面的书都会帮助你在社会混的更好,更别提一个码农了。另外开个玩笑,看看治疗或者预防颈椎增生的书,大部分程序员的通病。

最后一定要耐得住寂寞,程序员是个及其劳心的工作。

posted on 2011-09-14 15:33  easn  阅读(299)  评论(0编辑  收藏  举报