This course is the largest of the introductory programming courses and is one of the largest courses at Stanford. Topics focus on the 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 🤗. Most Programming Methodology graduates end up majoring outside of the School of Engineering.
Prerequisites: The course requires no previous background in programming, but does require considerable dedication and hard work😤.