非计算机专业需要掌握哪些技术(非计算机专业学生怎么走上计算机技术之路)
转计算机方向其实并不难,但你得知道怎么转,我来为大家科普一下关于非计算机专业需要掌握哪些技术?以下内容希望对你有帮助!
非计算机专业需要掌握哪些技术
转计算机方向其实并不难,但你得知道怎么转。
甚至你不需要上很多课,不需要报任何培训班,不需要花很多钱。
1、只看最短路,你只需要4门课:
编程语言 (Java 或者 C/C )
算法与数据结构
数据库
一门技能课 (网页开发,移动端开发,云计算,AI等)
别看计算机课很多,什么操作系统,计算机网络等等,那些课固然很好,但对我们转专业的学生来说:
时间有效,精力要用在刀刃上,优先去补那些最核心的、对找工作最有用的课程。
2、怎么补?
条条大路通罗马,我能想到以下几个好方案
研究生留学:
先申请一个本专业的研究生(ex生化环材),选课自由的那种,然后进去之后去选计算机相关的本科/研究生课程,最终完成曲线转专业大业。
直接申请面向转专业的计算机研究生课程:比如美国NEU,USC,USF等大学等都提供这样的项目。
自学:推荐网络公开课,比如cousera,比如哈佛、斯坦福公开课,不必要上什么培训班,因为:
最好的课程其实都是免费的。基础:
计算机科学导论(哈佛):http://open.163.com/newview/movie/free?pid=M6U6LS8CV&mid=M6U6MHDUR
算法课程入门(北大): http://www.coursera.org/specializations/biancheng-suanfa#courses
算法课程入门(民间): http://www.bilibili.com/video/av21828275
编程练习平台:http://leetcode.com/problemset/all/
进阶:
深度学习入门: http://www.deeplearning.ai/deep-learning-specialization/
机器学习入门课程:斯坦福CS 229
计算机视觉入门课程:斯坦福CS 231N
自然语言处理入门课程:斯坦福CS 224N
(以上课程B站就能看,欢迎评论留意补充~)
本科转专业,跨专业考研等
跨专业选修课(我在本科时亲测过,能行)
3、需要注意什么?
纵使你看完了以上所有课程,如果没有实战,没有实际做作业做项目,都是0。
实践是检验真理的唯一标准。
编程语言 算法与数据结构的实战:请去LeetCode刷题练习。
数据库 一门技能课的实战:请动手完成1-2个项目。
网页开发: 写一个论坛,一个淘宝之类的网站
移动端开发:写一个日历,通信软件之类的。
云计算:用spark和Hadoop尝试对大数据进行删改读写
AI算法:写一个推荐系统、搜索引擎、图像变化、语义理解的模型试试
4、如何定义成功
掏出你的简历,里面能凑到3-4门计算机/编程相关项目:恭喜你!你已经具备一个计算机学生一样的简历和项目背景。
掏出大公司面试题,你能找到思路知道如何去回答问题:恭喜你!你已经具备通过软件工程师面试拿到offer的能力。
当看着你的简历,评估你的面试,你的表现已经和一名普通计算机学生一模一样时:恭喜你!你已经成功走上计算机技术之路了!
以上,就是我能想到的非计算机学生走上计算机之路的最短路。我自己也不是就读计算机专业,但我见证着很多本科和研究生同学,来自电气,数学,通信,能源,生物等非CS专业,通过自己的努力最终转计算机,收获BAT,FLAG的offer完成逆袭的故事。
我们不能改变过去,但我们可以改变未来。
有志者事竟成,希望以上回答能够帮助到你,加油!
05/25 补充:
以上回答是我基于身边和自己的经验,总结出来的”转CS最短路“的最优方案。
并不是说计算机网络,计算机体系结构,操作系统等其他课就没有价值,但为了最短时间入门,不得不降低其他课程的优先级,在之后慢慢了解。比如结合投递的岗位,在实战遇到的问题后,再变查边学。
至于为什么要学数据库?因为数据库在之后网站开发,移动端,云计算,AI等项目中都会涉及到。考虑到学习数据库的性价比,入门难度低(相对操作系统等),所以推荐花点时间提前学习一下。
作者:陈历飞链接:http://www.zhihu.com/question/21671705/answer/1241926801来源:知乎
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com