Princeton University
Computer Science Dept.
Computer Science 333
Advanced Programming Techniques
Andrew Koenig
Spring 1998
Directory
General Information |
Schedule and Readings
|
Course Newsgroup
|
Links
|
What's New?
Lectures: MW at 1:30--2:50
Professor:
Andrew Koenig
ark@research.att.com
Lecture notes:
1. February 2: Introduction
(PDF
slides
,
handouts
)
2. February 4: How to approach the homework assignments
(PDF
slides
,
handouts
)
3. February 9: Design variations and data abstraction
(PDF
slides
,
handouts
)
4. February 11: Programming with abstract data types
(
source code
, PDF
slides
,
handouts
)
5. February 16: Programming without abstract data types
(
source code
, PDF
slides
,
handouts
)
6. February 18: Performance: theory and practice
(PDF
slides
,
handouts
)
7. February 23: So you think you can count?
(PDF
slides
,
handouts
)
8. February 25: Page buffers revisited
(PDF
slides
,
handouts
)
9. March 23: Controlling copies of objects
(PDF
slides
,
handouts
)
10. March 25: Inheritance
(PDF
slides
,
handouts
)
11. March 30: Dynamic binding
(PDF
slides
,
handouts
)
12. April 1: An object-oriented example
(PDF
slides
,
handouts
)
13. April 6: Another object-oriented program
(PDF
slides
,
handouts
)
14. April 8: Handles and use counts (part 1)
(PDF
slides
,
handouts
)
15. April 13: A note on
const
; Handles and use counts (part 2)
(PDF
slides
,
handouts
)
16. April 15: The opposite of object-oriented programming
(PDF
slides
,
handouts
)
17. April 20: Generic programming
(PDF
slides
,
handouts
)
18. April 22: Generic iterators
(PDF
slides
,
handouts
)
19. April 27: Programming abstractly
(PDF
slides
,
handouts
)