Lecture by Professor Mehran Sahami for the Stanford Computer Science Department (CS106A). Professor Sahami introduces 2 new concepts, and he shows the class how to combine the previous topics and lectures together. CS106A is an Introduction to the engineering of computer applications emphasizing modern software engineering principles: object-oriented design, decomposition, encapsulation, abstraction, and testing. Uses the Java programming language. Emphasis is on good programming style and the built-in facilities of the Java language.