CS106A - Programming Methodology

CS106A: Programming Methodology (Stanford Univ.). Instructor: Professor Mehran Sahami. This course is an introduction to the engineering of computer applications emphasizing modern software engineering principles: object-oriented design, decomposition, encapsulation, abstraction, and testing. Programming Methodology teaches the widely-used Java programming language along with good software engineering principles. Emphasis is on good programming style and the built-in facilities of the Java language. The course is explicitly designed to appeal to humanists and social scientists as well as hard-core techies. In fact, most Programming Methodology graduates end up majoring outside of the School of Engineering. (from see.stanford.edu)

An Overview of the Course