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.
Introduction to several programming
languages, including C, Assembly, C++, Concurrent Programming, Scheme,
and Python. The class aims to teach students how to write code for each
of these individual languages and to understand the programming
paradigms behind these languages.
Introduction to the course, recursion, algorithms, dynamic data
structures and data abstraction; significance