谷歌公司发布程序员养成指南,推荐相关在线课程
2014-11-12 19:54
741 查看
进入谷歌那样的大公司工作是多少程序员的人生梦想!最近,Google Education代言啊不推荐了一系列计算机相关课程,为想要学习编程的大学生们指明方向,非大学生也可以来学习哟~
谷歌推荐的课程更像是一个“技能树”,课程主要来自美国名校和各种开源教程,你也可以按照这个顺序学习中文的同类课程。
前面的 academic 系列课程比较接近计算机专业的学习顺序。如果你不打算成为专业的工程师,只想掌握一点编程知识,在工作中使用的话,可以直接拉到帖子中部开始观看。
————————以下内容搬运自Google
Education————————
要成为一名成功的软件工程师,你必须具备扎实的计算机科学基础。本自学指南适用于想要学习编程的大学生们,分为专业方向和非专业方向两个系列。你可以借助这个指南进行自学,但请首先修够你的专业学分,以保证顺利毕业。
本课程表中的课程不能代替大学课程,但它们能够帮助你进一步学习计算机科学,或者对这个领域建立初步理解。
关于如何使用本学习指南的4点建议:
请考虑自己的实际情况进行学习。
如果你还想学习《指南》之外的其他课程,尽管上吧!
本指南仅供参考,即使学完这上面的所有课程,也不能保证你一定能进入谷歌工作。
本指南不定期更新。你可以在Google +上关注 Google
for Students +Page ,随时获取更多资讯。
【为进军学术界作准备的课程】
计算机科学导论课程
你可以选择提供在线编程工具的计算机导论课程。
课程推荐:
Udacity
- intro to CS course
Coursera
- Computer Science 101
学习至少一种面向对象编程语言,如C++,Java 或Python
入门课程:
Coursera
- Learn to Program: The Fundamentals,
MIT
Intro to Programming in Java(注:这是他们的公开课视频)
Google's
Python Class(注:Google Developers出品!)
Coursera
- Introduction to Python
Python
Open Source E-Book(注:Python教材免费在线看!)
中级课程:
Udacity's
Design of Computer Programs
Coursera
- Learn to Program: Crafting Quality Code,
Coursera
- Programming Languages
Brown
University - Introduction to Programming Languages (注:这是布朗大学公开课的课件)
学习其他的编程语言
To learn list:Java Script, CSS, HTML, Ruby, PHP, C, Perl, Shell. Lisp, Scheme.
相关在线学习资源:
w3school.com
- HTML Tutorial
CodeAcademy.com
测试和提高自己的编程能力
例如:排查故障,创建测试,破解软件
相关课程:
Udacity
- Software Testing Methods
Udacity
- Software Debugging
学习逻辑推理和离散数学
相关课程:
MIT
Mathematics for Computer Science(注:这是MIT公开课)
Coursera
- Introduction to Logic(注:《逻辑学导论》有中文字幕哟!)
Coursera
- Linear and Discrete Optimization
Coursera
- Probabilistic Graphical Models
Coursera
- Game Theory(注:斯坦福精品课程,还有续集《博弈论2》!)
深入理解算法和数据结构
学习基本的数据类型,如堆栈、队列和数据包;
了解排序演算法,如快速排序,二路归并排序和堆排序;
了解数据结构,如二叉搜索树,红黑树和哈希表。
相关课程:
MIT
Introduction to Algorithms,
Coursera Introduction to Algorithms Part
1 & Part
2
List
of Algorithms
(注:这是英文维基给出的所有算法的列表,看看你完成了多少?)
List
of Data Structures(注:同上)
参考书籍: The
Algorithm Design Manual
(注:这是美国亚马逊的购买链接,不清楚有没有中文版)
深入了解操作系统
相关课程: UC
Berkeley Computer Science 162
(注:上面的链接是Youtube的播放列表,ppt等课件请看学校网站的资源)
人工智能相关课程
Stanford University:
Introduction
to Robotics,
Natural
Language Processing
Machine
Learning
(以上全是斯坦福的课程!人工智能哪家强!)
如何开发一个编译器
相关课程:Coursera
- Compilers
密码学
Coursera
- Cryptography
Udacity
- Applied Cryptography
并行编程
相关课程:Coursera
- Heterogeneous Parallel Programming
【如果你侧重应用方向】
项目开发相关课程
这方面的内容包括创建和维护一个网站,建立自己的服务器,或开发一个机器人。
相关课程:
Apache
List of Projects(注:这是apache.org提供的教程)
Google
Summer of Code
Google
Developer Group
如果你想了解一个大型系统的一部分(如代码库),阅读和理解代码,或跟踪文档和排查故障,那么你可以到Github上围观和学习别人的代码,并尝试开发自己的项目。
相关资源:Github, Kiln
如果你想通过学习提高与程序员合作的能力,那么你可以先尝试和程序员们共同完成一个项目。
如果你想补充算法知识,练习编程技巧,可以参加CodeJam、ACM举办的国际编程大赛等活动。
谷歌推荐的课程更像是一个“技能树”,课程主要来自美国名校和各种开源教程,你也可以按照这个顺序学习中文的同类课程。
前面的 academic 系列课程比较接近计算机专业的学习顺序。如果你不打算成为专业的工程师,只想掌握一点编程知识,在工作中使用的话,可以直接拉到帖子中部开始观看。
————————以下内容搬运自Google
Education————————
要成为一名成功的软件工程师,你必须具备扎实的计算机科学基础。本自学指南适用于想要学习编程的大学生们,分为专业方向和非专业方向两个系列。你可以借助这个指南进行自学,但请首先修够你的专业学分,以保证顺利毕业。
本课程表中的课程不能代替大学课程,但它们能够帮助你进一步学习计算机科学,或者对这个领域建立初步理解。
关于如何使用本学习指南的4点建议:
请考虑自己的实际情况进行学习。
如果你还想学习《指南》之外的其他课程,尽管上吧!
本指南仅供参考,即使学完这上面的所有课程,也不能保证你一定能进入谷歌工作。
本指南不定期更新。你可以在Google +上关注 Google
for Students +Page ,随时获取更多资讯。
【为进军学术界作准备的课程】
计算机科学导论课程
你可以选择提供在线编程工具的计算机导论课程。
课程推荐:
Udacity
- intro to CS course
Coursera
- Computer Science 101
学习至少一种面向对象编程语言,如C++,Java 或Python
入门课程:
Coursera
- Learn to Program: The Fundamentals,
MIT
Intro to Programming in Java(注:这是他们的公开课视频)
Google's
Python Class(注:Google Developers出品!)
Coursera
- Introduction to Python
Python
Open Source E-Book(注:Python教材免费在线看!)
中级课程:
Udacity's
Design of Computer Programs
Coursera
- Learn to Program: Crafting Quality Code,
Coursera
- Programming Languages
Brown
University - Introduction to Programming Languages (注:这是布朗大学公开课的课件)
学习其他的编程语言
To learn list:Java Script, CSS, HTML, Ruby, PHP, C, Perl, Shell. Lisp, Scheme.
相关在线学习资源:
w3school.com
- HTML Tutorial
CodeAcademy.com
测试和提高自己的编程能力
例如:排查故障,创建测试,破解软件
相关课程:
Udacity
- Software Testing Methods
Udacity
- Software Debugging
学习逻辑推理和离散数学
相关课程:
MIT
Mathematics for Computer Science(注:这是MIT公开课)
Coursera
- Introduction to Logic(注:《逻辑学导论》有中文字幕哟!)
Coursera
- Linear and Discrete Optimization
Coursera
- Probabilistic Graphical Models
Coursera
- Game Theory(注:斯坦福精品课程,还有续集《博弈论2》!)
深入理解算法和数据结构
学习基本的数据类型,如堆栈、队列和数据包;
了解排序演算法,如快速排序,二路归并排序和堆排序;
了解数据结构,如二叉搜索树,红黑树和哈希表。
相关课程:
MIT
Introduction to Algorithms,
Coursera Introduction to Algorithms Part
1 & Part
2
List
of Algorithms
(注:这是英文维基给出的所有算法的列表,看看你完成了多少?)
List
of Data Structures(注:同上)
参考书籍: The
Algorithm Design Manual
(注:这是美国亚马逊的购买链接,不清楚有没有中文版)
深入了解操作系统
相关课程: UC
Berkeley Computer Science 162
(注:上面的链接是Youtube的播放列表,ppt等课件请看学校网站的资源)
人工智能相关课程
Stanford University:
Introduction
to Robotics,
Natural
Language Processing
Machine
Learning
(以上全是斯坦福的课程!人工智能哪家强!)
如何开发一个编译器
相关课程:Coursera
- Compilers
密码学
Coursera
- Cryptography
Udacity
- Applied Cryptography
并行编程
相关课程:Coursera
- Heterogeneous Parallel Programming
【如果你侧重应用方向】
项目开发相关课程
这方面的内容包括创建和维护一个网站,建立自己的服务器,或开发一个机器人。
相关课程:
Apache
List of Projects(注:这是apache.org提供的教程)
Summer of Code
Developer Group
如果你想了解一个大型系统的一部分(如代码库),阅读和理解代码,或跟踪文档和排查故障,那么你可以到Github上围观和学习别人的代码,并尝试开发自己的项目。
相关资源:Github, Kiln
如果你想通过学习提高与程序员合作的能力,那么你可以先尝试和程序员们共同完成一个项目。
如果你想补充算法知识,练习编程技巧,可以参加CodeJam、ACM举办的国际编程大赛等活动。
相关文章推荐
- 谷歌公司发布程序员养成指南,推荐相关在线课程
- (转)谷歌公司发布程序员养成指南,推荐相关在线课程
- Google发布了程序员养成指南,国内互联网巨头是否也有类似的指南和课程推荐?
- 【转载】知乎答案----孙志岗----Google 发布了程序员养成指南,国内互联网巨头是否也有类似的指南和课程推荐
- 谷歌公司发布的程序员养成指南
- 【分享】谷歌公司发布的程序员养成指南
- 谷歌公司发布的程序员养成指南
- 谷歌公司发布的程序员养成指南
- 谷歌公司推荐的计算机科学在线课程&学习路线
- [找程序员代写推荐]JPA相关课程 代码
- 谷歌公司推荐的计算机科学在线课程&学习路线
- 大型企业网络配置系列课程详解(八) --VoIP的配置与相关概念的理解 推荐
- 大型企业网络配置系列课程详解(六) --PPP链路的配置与相关概念的理解 推荐
- [找程序员代写推荐]spring Scurity终于测试OK了,复杂的功能还待深入研究!发布出来一起探讨吧!
- 如何发布程序到Autodesk 应用程序商店, 在线课程5月22日,时间晚上11点
- 荷露叮咚PowerDesigner15系列视频课程发布动态及相关说明
- [找程序员代写推荐]java代理课程测试 spring AOP代理简单测试
- 百度推荐相关文章工具正式发布
- 百度推荐相关文章工具正式发布
- 博客推荐:推荐两个程序员相关个人博客s135.com coolshell.cn