3 章(第2/3 页)
分析和操作一个极高复杂性的系统(包括装环境、de一些谜之bug),并忍受该过程中的繁难、没有线索、牵一发而动全身的复杂性,是成为一个好的计算机专业的学生必备的基本素质,面对全新的知识和事物能够迅速把握关键、迁移自己已有的知识快速学习,也是计算机专业的学生必须具备的能力。
在这个角度上,我认为大学之前从来没有写过代码的同学,最好还是相对慎重的选择计算机专业;如果选择了,则程序设计、面向对象、数据结构、算法设计、软件工程这之类的代码基础课一定要把基础打的极其扎实,否则一定会苦不堪言,将来在具体岗位上的可替代性也会很大。
总之,在计算机的专业课程方面,我的建议是:一定要动手做。对计算机学科内容充分的掌握=熟练理论知识+自己动手写(改)过一遍代码+de过一遍bug+最终跑通。
这个过程一定要独立、千万不要耍滑,可以寻求指点,但一定不要去找大佬直接复制他们的代码或者结果,一定要自己结结实实吃下所有shit并最终趟过去、完全理解自己写了什么,只需要经过几次这样的艰苦流程之后,基本就会在代码能力和专业素养上有质的提升,渐渐上道,很多在大学之前完全没有编程经验的同学度过了这一难关之后,和那些一直参加编程竞赛的大佬的专业水平差距小到基本可以忽略不计。
一个小技巧和建议是,国外的很多大学(如四大:MIT,CMU,Berkeley,Stanford)有质量很高的网课和材料,国内的许多大学课程抄的邯郸学步、深入深出、讲的云里雾里,如果有时间可以去把英文原版的课程啃透,对于整体提升自己的理解「内功」有奇效。
专业前景
计算机行业的出路大体上其实就两条路,一条是学术,一条是就业。前者的主要去向是大学高校,角色是大学老师,而后者则是进入企业(俗称大厂)成为一名码农。但这一点也不绝对,也有一些不是教职、但在工业界从事科研的人,像各种大厂包括微软的研究院,其工作核心更接近于学术的创新、而非工业界的开发和「出活儿」。
以下,我将简要介绍这两大出路的工作内容、选拔侧重、优劣分析。
学术道路
学术这条路主要的归宿是成为一名大学老师,少数是在某些有技术研发的公司中成为研究员。
想要走上这条路基本上都得读博士,并在博士期间积累论文产出,想要获得比较好的教职坑位往
本章未完,点击下一页继续。