CS 180 - Course Syllabus
January 11-15
(Week 1)
Lecture Week 1: Course overview, discussion of simple Java programming constructs.
Skim sections 1.3-1.6; 2.1-2.4
Slides
, audio for
lecture 1
,
lecture 2
.
January 18-21
(Week 2)
Note: No class on January 17,
Martin Luther King, Jr. Day
.
Lecture Week 2: Basics of Programming
Read Chapters 1.1-1.2, 1.7-1.8
Slides
(see VOD/PODcasts at left for audio),
code used in lecture
.
January 24-28
(Week 3)
Lecture Week 3: Types, Functional Abstraction
Reach Chapter 2.3-2.8, 2.11, 5.3, 6.1-6.3
Slides
,
code used in lecture
.
January 31 - February 4
(Week 4)
Lecture Week 4: More on functions: Formal Parameters and Arguments.
Classes - the basics.
Read Chapter 5.3, 6.1-6.3
Slides
.
February 7-11
(Week 5)
Lecture Week 5: Classes as Abstract Data Types
Read Chapters 8 (skim)
Slides
.
February 14-19
(Week 6)
Lecture Week 5: More on Abstract Data Types: Interfaces
February 16: Guest Lecture by
Prof. Mathur
: Reasoning about Control Flow
Read Chapter 9, 3, 4
Slides from 2/16
,
code used in 2/14 lecture
.
February 21-25
(Week 7)
Lecture Week 7: Exception Handling
Read Chapter 11
Slides
,
code used in lecture
.
February 28-4
(Week 8)
Exam 1
: February 28, 4:30-5:20pm, WTHR 200
. Covers material through Week 6 / Lab 5 / Project 2.
Lecture Week 8: Testing and Debugging
Read Chapter 15.1-15.4
Slides
.
March 7-11
(Week 9)
Lecture Week 9: More on Data Abstraction: Inheritance, Generics
Read Chapters 10, 17.9
Slides
,
code used in lecture
.
March 21-25
(Week 10)
Lecture Week 10: Linked Data Structures (and practice with Generics)
Read Chapter 17.1-17.6
Slides
,
Code used in lecture
March 28-April 1
(Week 11)
Lecture Week 11: Linked Data Structures, Recursion
Read Chapter 17.7-17.8
Slides
,
Code used in lecture
April 4-8
(Week 12)
Lecture Week 12: Event-driven programming: GUIs
Read Chapter 12-12.4
Slides
.
Exam 2
: April 6, 4:30-5:20pm, WTHR 200
. Covers material through Week 11 / Lab 10 / Project 4.
April 11-15
(Week 13)
Lecture Week 13: Event-driven programming: GUIs
Read Chapters 12.5-12.6, 13.1-13.4
code used in lecture
.
April 18-22
(Week 14)
Lecture Week 14: Streams, File I/O, and Network I/O
Read Chapter 18.
Slides
April 25-29
(Week 15)
April 25: Review of items people seem to have difficulty with
April 27: Guest Lecture by
Prof. Vitek
:
The Java Virtual Machine and how the Java Language is implemented
Lab this week will be an opportunity to work on Project 6 on the actual phones. Nothing to be turned in, although if your project works successfully, please show it to your lab instructor.
Review during recitations
Slides
May 2-7
(Finals Week)
Final Exam
: Tuesday, May 3 3:20pm - 5:20pm PHYS 112