[TOC]
CS 50 简介
Lecture | Main |
---|---|
Week 0 | Scratch |
Week 1 | C |
C,continued | |
Week 2 | Algorithms |
Week 3 | Memory |
Week 4 | Data Structures |
Week 5 | HTTP |
Week 6 | Dynamic Programming |
Python | |
Week 7 | Python, continued |
Week 8 | Scratch |
Week 9 | SQL |
Week 10 | JavaScript |
Week 11 | The End |
参考-cs50.net
project5050
cs50.io, cs50 线上 IDE
学习途径
- 直接在 YouTube 上观看
- 优点: 可以同步中文字幕
- 缺点:只有视频而已
- edx 上观看
- 优点:有课程大纲以及英文字幕(字幕不是一句一句的,是整个的)
- 缺点:没有中文字幕
- cs50.tv, 这里有源码、ppt、视频等资源供下载
OK,主要就是上面的三个资源了。
CS50 Library
在学习到第二节课——C语言的时候,需要用到 cs50.h 这个库。最简单的方式质直接登入cs50.io,线上的 IDE,但是这需要又网络,而且程序必须保存到线上的 IDE 环境中,无法再本地进行编译,那么如何使得在本机上开发也可以引入 cs50.h 呢?
- 找到 cs50/libcs50 git 仓库
- 下载 -> 解压 -> cd libcs50 -> sudo make intall(详细安装可以看 git 的 readme 文件)
- 安装完成只有,在开发的 c 文件中引入 #include
就 OK 了 - 可以通过 man get_string 本地查看文档,也可以通过 reference.cs50.net/cs50 在线查看文档,推荐线上查看比较清晰
test.c 内容:
1 | #include <cs50.h> |
运行:
1 | $clang test.c -lcs50 |
注意:
- 头文件引入,按照字母顺序,方便查找
- clang 编译的时候需要加上 -lcs50
学习资源
- edx 学院, 视频,字幕
- [cs50.tv] (http://cs50.tv/2017/fall/) 主要是资源的下载,代码下载
- 中文解读
- short
- YouTube
- manual.cs50.net
- reference.cs50.net/cs50
- github.com/cs50/libcs50