Table of ContentsAdvanced programming techniques Today's topics Who are we? Who are we? The purpose of the course Underlying philosophy The most important idea Subsidiary themes Abstraction in practice Generalizing the algorithm Other ways of reversing Other forms of abstraction Abstractions create barriers Why are barriers good? Abstraction is rarely free So what do we do? The point of these examples Learn by writing programs Modifiability What are ``real programs?'' General implications Homework implications An example Alternative versions Modularity Modularity example What is expected of you? Schedule Course grades Calibration Program grades Mechanics of programming Project teams Project proposals Project essentials Homework, part 1 Suggested Strategy Illustration Illustration, continued Homework, part 2 Suggested reading (part 1) Suggested reading (part 2) |
Author: Andrew Koenig
Email: ark@research.att.com Home Page: http://www.research.att.com/info/ark |