The following schedule is tentative and is subject to change as the semester proceeds. After each class, slides will be linked-to in PDF format.
For homeworks, check out the submission instructions. Solutions are available under the "due" link.
# | Date | Theory | Java | Lecture notes, Sample code | Homework | |||
Topic | Reading due (Schneider/Gersting) | Topic | Reading due (Lewis/Loftus) | Janak | William | |||
1 | 1/18 | Course introduction | Lecture | |||||
2 | 1/20 | Introduction to UNIX | Lecture | |||||
3 | 1/25 | Introduction to UNIX, cont'd. | Lecture | HW#1 out | ||||
4 | 1/27 | Introduction to CS | 1 | Lecture |
Diagrams HelloWorld |
|||
5 | 2/1 | Binary number system | 4.1-4.2 | Introduction to Java | 1.4-1.6 | Lecture | Slides | |
6 | 2/3 | Data and expressions | 2.1-2.4 |
Lecture Code |
Code | |||
7 | 2/8 | Data and expressions (cont'd). | 2.4-2.6 |
Lecture Code |
Code | HW#1 due; HW#2 out | ||
8 | 2/10 | Boolean logic, gates, circuits | 4.3-4.4 | Intro to graphics programming | 2.7-2.9 |
Lecture Code |
Code | |
9 | 2/15 | Computer architecture I | 4.4-4.6; 5.1-5.2 | Lecture | ||||
10 | 2/17 | Computer architecture II | 5.3-5.4 | Lecture | ||||
11 | 2/22 | Using objects I | 3.1-3.3 |
Lecture Code |
HW#2 due; HW#3 out | |||
12 | 2/24 |
Using objects II; Writing objects I |
3.4-3.8; 4.1-4.2 |
Lecture Code |
||||
13 | 3/1 | Writing objects II | 4.3-4.4 |
Lecture Code |
Code | |||
14 | 3/3 | Using objects III; Writing objects III; Conditionals/loops I |
3.9-3.11; 4.5-4.8; 5.1-5.4 |
Lecture Code |
||||
15 | 3/8 |
Lecture Code |
HW#3 due | |||||
3/10 | ||||||||
3/15 |
Vacation - No class |
|||||||
3/17 | ||||||||
16 | 3/22 | Conditionals/loops II | 5.5-5.6 |
Lecture Code |
HW#4 out | |||
17 | 3/24 | Conditionals/loops III | 5.7-5.8 |
Lecture Code |
||||
18 | 3/29 | Algorithms I | 2.1 | Arrays I | 7.1-7.4 |
Lecture Code |
||
19 | 3/31 | Algorithms II | 2.2-2.3 |
Lecture Code |
||||
20 | 4/5 | Algorithms III | 2.4; 3.1-3.6 |
Lecture Code |
HW#4 due; HW#5 out | |||
21 | 4/7 | Algorithms IV |
Lecture Code |
|||||
22 | 4/12 | OOP, software engineering | 8.8, 8.10 | OOD I | 6.1-6.2 |
Lecture Code |
||
23 | 4/14 | OOD II | 6.3-6.4 |
Lecture Code |
||||
24 | 4/19 | OOD III; Arrays II | 6.5-6.8; 7.7 |
Lecture Code |
HW#5 due; HW#6 out | |||
25 | 4/21 | OOD IV; Arrays III | 6.9; 7.7 cont'd. |
Lecture Code |
||||
26 | 4/26 | OS, networks | 6.1-6.2, 6.4, 7 | Lecture | ||||
27 | 4/28 | Computation theory, Artificial Intelligence | 11, 14 | Lecture | ||||
5/2 |
No class |
HW#6 due | ||||||
5/3-5/5 |
Reading week |
|||||||
5/10 | ||||||||
5/12 |