IT学生解惑真经

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

IT学生解惑真经非生而知之者,孰能无惑?惑而不从师,其为惑也,终不解矣。--------韩愈《师说》在校的IT学生有几百万都在为如何如何学习才能找到工作、融入社会而迷惑我们需要的不是灵丹妙药而是一本让你少走几年弯路的IT学生解惑真经肖舸杨中科左飞著这是一部写给在校计算机专业学生的书如果没有看到这本书你可能会茫然无措的度过学习阶段把这本书推荐给你的同学你会得到更多朋友序中国IT领域的发展速度之快令世界瞩目,但是中国的计算机教育却没有能够跟上。因此,在各大高校扩招的同时,IT培训机构同样发展的很快。然而,学习IT的学生却仍然面临着其他专业不一样的困惑。因为IT技术发展很快,而课程体系并不能很快跟上,因此学生在学校并不了解企业需要什么,自己需要学习什么。正是在这种情况下,CSDN作为最大的IT技术社区,我们看到了IT学生所面临的困惑。于是专门推出了学生大本营(),邀请了上百位在企业一线的技术高手和专家,IT培训机构的精英老师加入进来,针对IT学生所面临的通用问题进行解答。这些老师是站在过来人的角度,耐心的分析现在的市场、同学的心理,以及面临的机会和挑战,更重要的是,每位老师都给出了具体的建议。只要认真的读取这些老师的回信和总结,你总能从中获得自己想要的答案。韩愈的《师说》中写道:“非生而知之者,孰能无惑?惑而不从师,其为惑也,终不解矣。”有了这些困惑并不可怕,可怕的是不知道如何寻找答案和解决问题的方法。现在,就开始在这些老师的文章中寻找答案吧。CSDN创始人蒋涛IT学生解惑真经目录大学计算机课程学习路线2如果你是一个计算机相关专业大学低年级学生,那么这篇文章就是为你写的。我之前曾经发过一篇博文《大学计算机专业那些课》来谈论大学中各门课程的意义和重要性。那是针对更宽泛的范围来说的,这篇文章则更加精要和简约。考研还是不考?5有很多同学发出过这样的疑问“到底应不应该考研?”,很多同学都被这样的问题困扰着。“考研”这个词围绕在我们每个人周围,学校海报栏中最大的广告一定是考研培训班的,学校书店里卖的最火的书一定是考研的辅导书;同学们之间经常聊的也是“你考不考研,想考哪儿的研?”,仿佛不想考研就是没追求的表现。做什么样的软件才能赚钱?学什么样的知识才能赚钱?14我到学生大本营半年,发现大家都没有讨论过。那就是,做什么最赚钱?无可否认,软件可以实现各方面应用,不过,就我的观察,在现实生活中,有两种软件最赚钱,一种是数据库,一种就是嵌入式底层的东东,嗯,随着互联网的发展,目前做网络程序也很赚钱。程序员如何踏上社会22目前在学生大本营里,我也观察到,很多二本,三本的同学,在心里上有种自卑感,总觉得考分低了,出来就低人一头。这点,我是万万不赞同的。人一生是很复杂的,和邓大爷一样,三起三落不到头,关键是,你现在准备做什么?你能坚持多久?职业生涯第一步----选择你的城市27目前,感觉很多同学,在双选会签约,工作地点的选择上,有一定的盲目性。很少有人能主动地去选择合适自己的城市,因此,这里提出一点讨论。一家之言哈,欢迎拍砖。关于女生的程序员之路33目前大学里面有句话:“干得好不如嫁得好!”,我想大家都听说过。其实是人就有惰性,也有一些劣根性,都想找一些活少拿钱多的工作,舒舒服服地赚钱,这种思想,其实不管男人女人都有。我自己也有,呵呵。关键是,社会是公平的,一分贡献,一分收获,哪有那么多不劳而获的事情。如何找需求练技术37被很多同学问,怎么才能知道用人单位的需求。这个给个建议哈:去CSDN或者其他什么网站的项目外包栏目看看,里面的需求,就是别人肯付钱的需求,自己试着实现一下,比较练技术。如果能卖出去,就表示技术练差不多了,可以凭这个项目经验找工作了。个人感觉,这个项目经验在找工作的时候,有时候比学历证书管用。修炼编程的内功39什么叫编程的内功?我的理解,就是对这个世界的抽象化理解能力以及描述能力。一个工作,能迅速从中提炼出下次可以重复的套路,并且能以一定的规则,就是计算机语言规范,描述出来,拥有这两个能力,就能保证遇到任何问题,都有办法写出程序来。所以,大家学校中学了很多数学,语言,算法,数据结构,甚至编译原理,操作系统,其实这些统统是工具,不是写程序的目的。7000块钱能买什么?--答一位同学的培训问题45大家不妨扪心自问一下,学培训班,是为了找工作,还是为了跟风,还是为了学到真本事?自己有没有决心,让这7k物有所值?如果大家能像这样有割肉的感觉去学习,把自己往死里逼,这7k就花的值得,该学,如果没有这个劲头,学了和没学一码事,建议还是省省吧,替你爸爸妈妈省点钱。构建自己的不可替代性49我问过很多年轻的朋友,他们在找工作的时候,最看重什么?答案很多啦,公司要够大,薪水要够高,要有足够的挑战性,要有成就感。。。等等,当然,也有一脸茫然的,那是还没有想好的。其实后来我考虑了一下,这个话题可以换个方式问,就是大家为什么需要找工作?其实人生活在社会上,公司里,最关注的,还是安全感。简述C和C++的学习历程53总是被同学们问到,如何学习C和C++才不茫然,才不是乱学,想了一下,这里给出一个总的回复。一家之言,欢迎拍砖哈。IT业的职业细分58在大本营看到很多同学讨论以后的出路,感觉到大家对IT业职业的细分还不是很了解,这里就我的经验,给大家一点参考,希望能帮到大家。一家之言哈,欢迎拍砖和补充。我在IT业很多年,也仔细分析过IT业的职业构成,就我的了解,其实IT业也在细分,大致分为如下几种……选择技术还是选择销售?63我看了你的信,你说大学没有学习好,虚度了光阴,现在培训班,觉得自己缺乏钻研(注意,不是专研)精神,不想做技术了,想做业务,我根据你的文字,理解这个业务就是销售工作。但是又觉得自己这么多年在技术上投入过多,舍不得。这么多技术我该怎么学67什么都想学。恨不得把所有的知识统统都塞到肚子里去。看到什么,想学什么!这是几乎所有在校大学生的通病。但是,这不是坏事,甚至可以说是好事。说明了你“求知欲”高!总比那些,生活没有激情,整天知道泡妞、上网、打游戏、混日子的强。金融危机下的职业思考----答一位同学的问题70在你的问题中,你有一个大前提,就是金融危机,导致就业机会偏少,我个人认为,其实没有必要这么悲观的。你的问题让我想起了十年前,98年到2000年的经历,估计你那时候还没有考虑到就业问题,不过当时我可是身历其中,现在想想,其实当时有很多想法也不是很正确。简述如何书写工程化的简单代码74在坛子里混了这么久,看了很多同学的代码,感觉到大家的代码,学校里面的书生气有点重,对于细节考虑不够,有时候,感觉和吃了颗苍蝇一样,确实很不舒服。这里根据我个人的经验,给大家简述一下,工程化代码,以及简单代码,不容易出错的代码的一些基本写法。附:作者简介&编者后记81大学计算机课程学习路线左飞老师如果你是一个计算机相关专业大学低年级学生,那么这篇文章就是为你写的。我之前曾经发过一篇博文《大学计算机专业那些课》来谈论大学中各门课程的意义和重要性。那是针对更宽泛的范围来说的,这篇文章则更加精要和简约。因为这里研究的仅仅是核心计算机课程,更重要的是,这里要说的是这些课程之间的关系,以及它到底讲得是些什么东西。我想这些课程最终是要组成一个体系的。请注意我这里所说的是通常情况下的核心课程,每个学校在课程设置是可能是存在差异的,但总体上框架应该是不变的。最开始的第一门课应该是“C语言程序设计”,这基本上属于你日后一切学习的开始,简单说这门课程的主要目的和内容就是介绍一种计算机语言的语法内容,至于怎么学好它,之前的文章都谈过了,这里就不罗嗦了。之后的课程会分为三条线,第一条线的第一门课程是“数据结构与算法”。这很简单,一些有了语言基础之后,为了更好的使用语言去解决问题,就必须学习结构知识和算法。至于怎么学好它,之前的文章也谈过了——请注意,如何学都不是本文的重点。本文的重点在于告诉你你将来都会学些什么以及该学些什么。“数据结构与算法”的后续课程是什么?答案应该是《编译原理》。很奇怪吧?课程就是这样设计的,其实这个路线也不是我发明的,国外大学的CSCourse的体系也是这么设计的。编译原理说白了就是介绍编译器如何工作的,是让计算机理解计算机语言的一种方法和理论。这个工作过程之中蕴含了大量的算法,而且是非常复杂的算法,很多人甚至认为编译原理是计算机专业本科阶段最难的一门课程。主要就是因为这里面的算法太复杂,当然也会用到很多结构,树可能是用得最多的。当然,这就是相当于是数据结构与算法课程的一个后续性课程,类似一道附加题。最近听一个学生说有些学校本科已经取消这门课了,我想应该是较少一部分学校的做法吧。不过,中国的学习并不太重视这门课倒是真的。一般课程设置就是一个学期左右的课时。但是一般的国外学校这门课都要学上1年,甚至两年之久。这条线路到编译这里就应该是终点了。下面我们来谈谈大学计算机课程学习的第二条路线。在你具有了一定C语言基础之后,除了前面讲的第一条路线以外,你已经可以开始下面这条路线的学习了。为了更好地探究计算机系统的研究机制,在学习了C语言之后,下面一门需要学习的课程是“汇编语言和微机接口技术”,这门课程包含两部分的内容,一部分就是汇编语言,汇编是一种更底层的语言(相对于C而言),说白了它就是一种“用助记符描述的机器语言”。很多人刚学汇编的时候都觉得很复杂,因为它跟硬件紧密相关,就是那些个寄存器也够初学者糊涂一阵子的。这门课程的另外一部分内容是微机接口技术,目前国内高校这部分内容都是基于80X86系列芯片的。已经可以看到这门课其实涉及到了很多硬件的知识,其实还不止,关于I/O控制,寄存器,中断,这门课里都有体现的。接下来要学习的内容就是《计算机组成原理与体系结构》。其实我特别奇怪,我在写学习路线1(也就是前一篇文章)的时候,有读者认为在学习C语言之前,或者在学习其他专业课程之前,最先要学的就是这个东西。我不知道大家是不是觉得大学第一门专业课就是这个,我觉得这么想的人是不且实际,信口开河的。这门课程还是比较深的一门课程,在汇编和接口之后安排这门课程是比较的。不过国外的一些先进的计算机教育体系确实也有在较开始的时候开设一门概论课来作为导引,有时候叫ComputerSystemIntroduction,有时候叫ComputerCulture,其实内容差不多,但作为计算机专业课程的导引课程,这些课程的设置里面已经设计到组原和OS的初步内容了。但这和ComputerStructrue&Architecture还是有区别的。接下来的一门课程是《计算机操作系统》,如果外行听起来可能觉得这个课应该是学如何使用操作系统的吧,就像“WindowsXP速成”?非也!这门课程是讲OS是如何设计的,或者说是如何实现一个OS(当然做要比说起来难多了)。之所以这门课程被安排在组原之后,那是因为这反映了一种自底向上的学习路线。操作系统当然是在计算机系统之上来搭建的。向调度啊、虚拟内存啊这些问题都是由操作系统来控制的。我最近所写的《代码揭秘》基本上是属于这条路线上的内容的,不同的是我采用了一种更贴合读者理解方式的描述,因为在讲述这些原理之前,我都是采用C语言实例来作为引子的。有空也推荐大家看看,应该学校里的图书馆是可以借到的。前一阵子一位四川大学的计算机青年教师给我写信谈起我这本书时,我才知道高校的图书馆里原理已经可以借到了。以上就是大学计算机课程学习的第2条路线,下面我们来讲最后一条路线。最后一条路线属于应用型的,也就是说当你学完了基本的原理之后,一方面为了日后更好的工作,另一方面如果从事研究工作也可择其一而继续深入探究,那么最好总之要上升到一定应用层面的东西。在你有了一定的C基础之后,学校可能会开一些面向对象程序设计方面的课程,可能是C++或者Java,因为面向对象的语言在实际开发中正广泛的被使用。无论是C++还是Java,跟C来说本质上都是语言,只不过他们多了一些OOP方面的特性。如何学好它们,我前面的文章中已经谈过,这里就不多言了

1 / 68
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功