Our school does not support Internet Explorer. For a much better experience, please download the latest version of Google Chrome, Safari, Opera or Firefox
The Structure and Interpretation of Computer Programs (61A)

About:

  • 31½ hours
  • 38 lessons
  • 0 quizzes

Certificate of Completion Offered

The CS 61 series is an introduction to computer science, with particular emphasis on software and on machines from a programmer's point of view. This first course concentrates mostly on the idea of abstraction, allowing the programmer to think in terms appropriate to the problem rather than in low-level operations dictated by the computer hardware. The next course, CS 61B, will deal with the more advanced engineering aspects of software, such as constructing and analyzing large programs. Finally, CS 61C concentrates on machines and how they carry out the programs you write.

In CS 61A, we are interested in teaching you about pro

What You'll Learn In This Course

What You Need For This Course

Description

The CS 61 series is an introduction to computer science, with particular emphasis on software and on machines from a programmer's point of view. This first course concentrates mostly on the idea of abstraction, allowing the programmer to think in terms appropriate to the problem rather than in low-level operations dictated by the computer hardware. The next course, CS 61B, will deal with the more advanced engineering aspects of software, such as constructing and analyzing large programs. Finally, CS 61C concentrates on machines and how they carry out the programs you write.

In CS 61A, we are interested in teaching you about programming, not about how to use one particular programming language. We consider a series of techniques for controlling program complexity, such as functional programming, data abstraction, and object-oriented programming. Mastery of a particular programming language is a very useful side effect of studying these general techniques. However, our hope is that once you have learned the essence of programming, you will find that picking up a new programming language is but a few days' work.

Taught by John S. DeNero in the spring semester of 2015

Syllabus

All the lessons in this course
  • Spring Semester
  • Spring Semester of 2015
  • Lecture 1 49:23
  • Lecture 2 50:19
  • Lecture 3 48:58
  • Lecture 4 49:39
  • Lecture 5 48:05
  • Lecture 6 50:28
  • Lecture 7 49:01
  • Lecture 8 48:46
  • Lecture 9 48:10
  • Lecture 10 50:25
  • Lecture 11 52:10
  • Lecture 12 49:14
  • Lecture 13 50:05
  • Lecture 14 50:50
  • Lecture 15 45:35
  • Lecture 16 51:59
  • Lecture 17 50:33
  • Lecture 18 49:35
  • Lecture 19 50:13
  • Lecture 20 51:20
  • Lecture 21 50:04
  • Lecture 22 47:22
  • Lecture 23 49:31
  • Lecture 24 51:33
  • Lecture 25 48:39
  • Lecture 26 50:22
  • Lecture 27 50:22
  • Lecture 28 49:15
  • Lecture 29 50:23
  • Lecture 30 52:09
  • Lecture 31 50:40
  • Lecture 32 50:45
  • Lecture 33 50:04
  • Lecture 34 49:46
  • Lecture 35 46:20
  • Lecture 36 50:22
  • Lecture 37 50:39
  • Lecture 38 46:42