良心推荐:一份20周学习计算机科学的经验贴(附资源)

 姓名:樊松松

 学号:17021211234

 转载自https://www.leiphone.com/news/201805/qFtW0h1tJagXpJV9.html,有删节

嵌牛导读】:不就学个计算机嘛,给你20周,行不行

嵌牛鼻子】: 计算机

嵌牛提问】:20周真的可以吗?

嵌牛正文】:

这是一份五个月(20个星期)学习计算机科学的经验贴,希望帮助你跟我一样从入门到精通。

传统的大学开设 ACS 专业,主要是引导学生从毫无任何编程经验,到对计算机科学领域的一些相关学科有一个较为宽泛的认识。在这条视频中,我将给大家介绍一下,我个人是如何安排自己的学习规划,在短短的五个月内,掌握计算机科学这门领域的知识。

我列在这里的资源,在互联网上都能找到,并且都是免费的。在我开始之前,请大家记住,你可以根据自己的情况加快学习进度比如视频加速观看,每天学习两到三个小时,每门课在周末只做一个项目等等。在学习的时候,手写笔记以便记住所学的内容,在你学习列表中的内容时,记住关注一些计算机行业的大牛,这样就能及时了解到相关领域的最新动态了。

WEEK 1-2 Python

在最开始,我们要学的是 Python 这种编程语言。什么是Python?Python是一种解释执行的具有动态语义的面向对象的高级编程语言。啊什么鬼啦,定义中这么多专业术语,看不下去怎么办?别着急,我给大家介绍一个学习资源,这个资源不要求你了解计算机科学领域的相关术语也能看懂。

在网络上有一本极好的免费的书,叫做Automate The Boring Stuff With Python。这本书对编程小白来说相当实用,书中展示了如何完成一些基本的任务,例如使用 Python 语言发送提醒邮件,移动文件夹以及格式化数据等。

我建议你第一周的时间来读这本书,总共有18章,如果每天完成三到四个章节周末就能完成。这本书中里面有许多练习,你可以在你使用的任何操作系统的终端上去完成这些练习。如果你在自己的机器上安装Python时遇到了问题,可以到Python 的官网上查查详细的相关信息。

在学习 Python 的第二周,我推荐参加CodeAcademy的Python课程。在课程中,你的网页上就会有交互式的控制台,你可以马上得到反馈,知道自己的代码是否编译正确。这些年,这个平台的这个课程一直很受初学者的欢迎。

总共两个周的时间,差不多足够你对 Python 语言有一个基本的了解了。当然,前两周你写的程序还不足以改变世界,但是,理解这门语言的语法、关键词、使用的频率以及为什么使用,这些都是至关重要的。它们能够帮助你在下一阶段中构建以及理解一些数据结构。

Automate the Boring Stuff with Python: https://automatetheboringstuff.com/

Codecademy的Python教程:https://www.codecademy.com/learn/learn-python

WEEK 3-4 数据结构

我还记得,当我还是哥伦比亚的一个计算机科学的大一新生时,每个人都会告诉我,在你的专业里面,你将要上的最重要的两门课是数据结构与算法。在那个时候,这听起来很滑稽。怎么能说数据结构与算法比 学习令人激动的机器人学和计算机视觉还要重要呢?结果我被啪啪打脸了,他们是对的。

在计算机科学领域,如果你要创造出无穷无尽超级棒的应用,你就必须理解如何正确地存储数据,以及对数据进行处理,以便完成任务。

有一个 UC SanDiego开设的数据结构课程,这门课程会展示给你各种各样的数据结构——从二叉树到链表,以及在 Python 中如何实现这些数据结构。

UC SanDiego的Data Structures Fundamentals: https://www.edx.org/course/data-structures-fundamentals-uc-san-diegox-algs201x

WEEK 5-6 算法

之后,你也许会想了解一些算法方面的东西。使用Python作为基础语言的最好的一门课程是MIT的算法介绍课程。在他们的网站上,你可以看到所有的课程和相关的笔记以及问题集。你会注意到,当谈到数据结构和算法,一旦你开始构建并且能够理解其中的一些东西,一切都会开始变得有用起来、当涉及到数据的正确存储时,你会开始理解,你必须要做的一些折衷处理,当你开始考虑应用的时候,你将能够知道,为了完成任务,你需要什么类型的数据结构以及算法。 

MIT 6.006: Introduction to Algorithms https://courses.csail.mit.edu/6.006/fall11/notes.shtml

WEEK 7 数据库

接下来,无论你是构建一个web应用、移动应用或者是仅仅进行数据处理,了解数据库如何运作都是十分重要的。SQL是最普遍的标准的数据库语言,Coursera上有一门课程,课程名字叫做Using databases with Python,这门课程能够帮助你容易地理解数据库。

你可以跳过这门课程的第一周,继续往后学,因为我们已经了解了Python学习部分的内容。

密歇根大学 Using Databases with Python https://www.coursera.org/learn/python-databases

WEEK 8 网络

在接下来的一周,我们将在Python上稍微停一下,转而把注意力放在网络上。在你构建一个需要使用互联网的应用时,你必须要弄明白,互联网这个人类设计的复杂的系统,是如何允许我们在一瞬间与全球各地的人进行交流的。

Coursera上有一门课程,这门课程是Google开设的,叫the bits and bytes of computer networking。你会学到互联网协议是如何工作的,你会弄明白,当你向网页中输入网页链接并且点击回车键时,在搜索引擎之下发生了什么。

The Bits and Bytes of Computer Networking https://www.coursera.org/learn/computer-networking

WEEK 9-10 网页开发

在你完成这一部分的学习之后,你就能开始进行网页以及移动应用的编程开发了。我是哈佛大学计算机科学教授David Malan的忠实粉丝,他个人充满热情,极富感染力,能够让你一直沉浸在课堂中。

网络方面最好的课程是哈佛的cs50 web编程课程,课程使用的是Python和JavaScipt,我们目前只了解了 Python 的相关知识,但是很有必要去了解一下JavaScipt这门web语言。

Git - Lecture 0 - CS50's Web Programming with Python and JavaScript https://www.youtube.com/watch?v=1u2qu-EmIRc

Github参考:https://github.com/melanierichards/just-build-websites

WEEK 11-12 移动端

接下来,你需要花两周的时间,构建一个让你激动的应用。你可能会灰心,不过没有关系,你有两个选择,IOS和安卓。可以在第一个周构建一个IOS应用,第二个周构建一个安卓应用,这样你就能看到两者之间的差别,并且能够意识到自己更喜欢哪一个编程环境。

苹果端:https://developer.apple.com/library/content/referencelibrary/GettingStarted/DevelopiOSAppsSwift/

安卓端:https://developer.android.com/training/basics/firstapp/

WEEK 13-14 数据科学

数据科学是从数据中寻找结论的一门学科,通常这会用到机器学习和统计分析部分的知识。

EDX上有一门UCSD开设的一门课程,名字叫做Python for data science。通过这门课来进入这个领域是一个很好的方法,课程略长,因此这门课需要一到两周的时间。这门课会让你直接使用到你的Python知识,你会接触到一些常用的数据科学方面的Python库,如pandas numpy。学完这门课之后,你会对机器学习有一点了解。

Python for Data Science:https://www.edx.org/course/python-for-data-science

WEEK 15-16 计算机视觉

Udacity上有计算机视觉方面特别好的课程,当然也推荐斯坦福的CS231n。

https://www.udacity.com/course/introduction-to-computer-vision--ud810

斯坦福CS231nhttp://www.mooc.ai/course/268

WEEK 17-18自然语言处理

我推荐Coursera的这门课:

Applied Text Mining in Python https://www.coursera.org/learn/python-text-mining

WEEK 19 软件编程实践

仅仅知道如何编程还是不够的,你还需要知道在一个团队中如何进行编程。这就是为什么,你需要在接下来这个周学习软件开发实践。

Coursera上有一门课程,名字叫做软件开发过程与方法论,在这门课程中,涵盖了许多和其他人一些协同编码开发的团队技巧。如果你想在一家公司工作,比如Google者一些很小的初创公司,了解这些东西至关重要。

Software Development Processes and Methodologies:https://www.coursera.org/learn/software-processes

WEEK 20 区块链

最后一个周,你需要,对加密货币、区块链等技术有一个大致的认识,因为这些技术现在很火。在Youtube上我已经准备好了一个加密货币的播放列表,你可以打开看看。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,732评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,496评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,264评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,807评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,806评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,675评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,029评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,683评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,704评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,666评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,773评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,413评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,016评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,204评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,083评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,503评论 2 343

推荐阅读更多精彩内容