跳转至

Syllabus

CS50是哈佛大学的一门CS入门课。课程全程是Introduction to the intellectual enterprises of computer science and the art of programming.,即计算机科学与编程设计艺术导论。

课程主题包括抽象(Abstraction)、算法、数据结构、封装(encapsulation)、资源管理(Resrouce management)、安全、软件工程、Web编程。可以说把计算机大部分领域都逛了个遍。教了C、Python、SQL、HTML、CSS、JavaScript语言。

这门课无须前置的任何计算机知识,对初学者及其友好,带你入门计算机学科。课后Lab也很有意思,涉及到艺术、人文、社科、科学领域。

(官网是这么说的,虽然没这么夸张,但是涉及面确实广,一边温故知新刚学的CS知识,一边了解一些其它领域的知识。SQL那一节丢失的小黄鸭巨好玩,给枯燥的SQL语句带来几分趣味)

David Malan教授是我见过讲课最有激情的,语速像机关枪,但是仍然能保证讲的东西有条理。``他似乎从很早就讲这门课了。助教Brian是个华裔,课后的Lab会有他的视频给你tips。

(CS50是我学习的第一门英文课,第一节课我看了得有五六个小时,就因为David的机关枪语速和我可怜的英语听力能力)


1. Expectations

  • Watch eleven lectures,
  • Complete ten labs,
  • Solve ten problem sets,
  • Take nine quizzes,
  • Take one test, and
  • Design and implement a final project.

2. Lectures

  • Week 00 Scratch
  • Week 01 C
  • Week 02 Arrays
  • Week 03 Algorithms
  • Week 04 Memory
  • Week 05 Data Structures
  • Week 06 Python
  • Week 07 SQL
  • Week 08 HTML, CSS, JavaScript
  • Week 09 Flask
  • Week 10 Ethics

最后更新: April 25, 2022