谷歌推荐的大学生技术学习指南

新闻 作者:站内编辑 2015-03-03 02:45:42
看到一篇对大学生学习技术很有帮助的指南,翻译一下,供大家参考:
有一个扎实的计算机科学的基础,是成为成功的软件工程师的重要条件。这是一个引导大学生自学技术和非技术技能的建议。你可以通过这个指南决定选修的课程,但是请确保这个课程符合你专业要求,以保证顺利毕业。本指南提供的网上资源并不是要取代大学提供的课程。它们可能会给你所学的内容进行补充或提供一个主题的介绍。 阅读须知: 1、请谨慎使用本指南 2、可能还有其他你想学习的东西不在本指南里,请不要局限于此,大胆去做。 3、完成了这些项目并不能保证能得到谷歌的工作机会 4、本指南有可能更新或改变,请关注更新 欢迎关注 Google for Students +Page 获取更多小贴士和认识更多学生开发者。 学术化的建议 CS课程介绍 提供基础编程知识的计算机科学课程 在线资源:Udacity - intro to CS courseCoursera - Computer Science 101

至少学习一种面向对象的编程语言: C++, Java, or Python

给初学者的在线资源:Coursera - Learn to Program: The Fundamentals ,MIT Intro to Programming in JavaGoogle's Python ClassCoursera - Introduction to Python, Python Open Source E-Book 给中级开发者的在线资源: Udacity's Design of Computer Programs, Coursera - Learn to Program: Crafting Quality Code, Coursera - Programming LanguagesBrown University - Introduction to Programming Languages

学习其他编程语言

注释: 把这些语言加入你未来的学习列表中 - Java Script, CSS, HTML, Ruby, PHP, C, Perl, Shell, Lisp 和 Scheme. 网上资源: w3school.com - HTML Tutorial, CodeAcademy.comUdacity - Mobile Web Development, Udacity - HTML5 Game Development

测试你的代码

注释: 学习如何找BUG、创建测试、断点测试 在线资源:Udacity - Software Testing Methods Udacity - Software Debugging

逻辑推理和离散数学的知识

在线资源: MIT Mathematics for Computer Science, Coursera - Introduction to Logic,Coursera - Linear and Discrete Optimization, Coursera - Probabilistic Graphical Models,Coursera - Game Theory

深入理解算法和数据结构

注释: 学习基本的数据类型(栈,队列,和包),排序算法(快速排序,归并排序,堆排序),数据结构(二进制搜索树,红黑树,哈希表),和Big O。 在线资源: MIT Introduction to Algorithms,Coursera Introduction to Algorithms Part 1Part 2List ofAlgorithms, List of Data Structures Book:The Algorithm Design Manual

扎实的的操作系统知识

在线资源: UC Berkeley Computer Science 162

了解用户体验设计

在线资源: Udacity - UX Design for Mobile Developers

学习人工智能

在线资源: 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, Google Summer of CodeGoogle Developer Group 参与大系统的小功能开发,阅读和理解现有代码,跟进文档和调试等 注释: GitHub是阅读他人的代码和贡献代码的好工具。 在线资源: Github, Kiln

和其他程序员工作

注释: 这将帮助你提高你团队协作能力和向他人学习的能力。 实践你的算法知识和编码技术 注释: 通过编程比赛,例如codejam或ACM国际大学生程序设计竞赛,实践你的算法知识。 在线资源: CodeJam ,ACM ICPC 成为一个教学助理 帮助教其他学生将有助于提高你的专业知识。 软件工程实习经验 注释: 在实习期前一段时间就要寻找实习机会。 在美国,实习在夏季和九月。 公司通常是提前几个月开始接收实习生申请。 原文 Guide for Technical Development 由 SegmentFault 整理编译

关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接