计算机博士需要什么?

东方雪琪东方雪琪最佳答案最佳答案

个人情况:本科软工,硕士计算机,研究生期间在硅谷某大厂实习,毕业后回到国内另一大厂工作至今(刚好20年) 先上结论:算法、数据结构、编译原理、操作系统、计算机网络这几本书是必读书目(后面会说为什么);其他书籍和项目经验都是加分项,不是必须项。

为什么要读这些书——因为这些是学科的基本素养。 具体解释:

1.什么是基本素养?就是无论你在大学学什么专业,这些书籍是你必须要掌握的基础知识,就好比不管你学习好不好,数学你必须得学会加减乘除四则运算一样。所以这些书本知识也是你面试聊天谈吐的必备要素,也是面试中那些面试官喜欢问的专业问题所在,更是你写出代码的根本来源(哪怕你以前没学过,但你通过看书学会了,那也是基础能力的体现)。 如果连这些最基本的要素都不具备,那你和码农这个职业基本上可以说是无缘了。所以说这些基础知识是必备的。

2.为什么要读这些书——因为这些知识经过时间的洗礼和社会的锤炼并没有被淘汰,反而经过了不断的完善,已经形成了普适性的准则,可以说能够熟练支撑这些知识的运用,基本上可以通吃互联网行业的软件工程师职位。

3.那么哪些是必须掌握的? ——算法、数据结构、编译原理、操作系统这四门课程所涉及的知识是必须要熟练掌握。为什么是熟练掌握而不是深入掌握呢?因为要深入一个领域,你需要花大量的时间和精力,可能还不一定能取得很好的效果。而熟练掌握的意思就是,提到某个知识点你能马上使用(不假思索)出来并且没有错误。举个例子:比如我让你当场手写快速排序的复杂度并实现,只要你回答是正确的,那就是掌握了。反之就是还没掌握。 当然,很多知识并不是说你掌握了简单的一两层就会用到,可能是需要你积累很多东西才能灵活运用。但是基本的素养是需要你花时间去掌握的。

4.为什么是这几本? 因为这是我觉得我这辈子花时间和精力最多,而且我认为最重要并且最有用的几本书(可能因为我是科班出身且专业是软工的缘故吧)。如果你以找工作为目的,那么我建议你就找这三本专业书(算法、数据结构、操作系统),然后每一章都过一遍,重点理解。至于编译原理和中高级编程,你可以选择性阅读。 如果时间充足,你可以把教材后边的习题都做一下(一定要动手做!不能只看不写!),这样能保证你的基本功不会生疏。 至于简历上的项目经验,如果是计算机相关专业的话,随便找一个开源的项目,加入其中并发挥你的技术能力,完成从0到1的项目开发,这也是能加分的一项。(注意项目最好是能在简历关闭投递日期前搞定,不然就作废了。)

容允淼容允淼优质答主

其实,我当年读的电子工程专业本科,研究生是计算机专业(CS),当时我们学校有2个学院叫信息科学与工程学院,一个就是电子工程系,另一个就是软件系(SC) ). 我觉得这个专业需要什么呢?这个答案很简单,只需要具备一种能力就可以,那就是能够使用工具进行编程工作。

因为目前的工作领域主要是大数据,数据挖掘和人工智能这些热门学科方向,所以就需要具备一定的编程基础了,至少能编写代码来完成项目目标。 我个人认为最好学习的语言是python,其次是C/C++, 因为如果做大数据的话python是一个非常好的选择,可以编写出比较优秀的脚本,比如用python完成ETL处理,用python完成一些算法和数据结构的快速实现,比如神经网络,机器学习,分类等。 C/C++这种语言就比较偏向于工程性比较强。

我来回答
请发表正能量的言论,文明评论!