This course is a sequel to CS115 Introduction to Computer Science I for majors.
It focuses on techniques in problem-solving, principles of object-oriented design and modeling,
and structured programming using a modern, high-level language.
The central theme of the course to help students develop competence
in the field of Computer Science by learning and practising skills from
math, science and engineering.
Students will study and practice a variety of problem solving techniques
with emphasis on abstraction, modularity and information hiding.
Problem solving with Abstract Data Types will be discussed in detail.
Object-oriented modeling and design will be emphasized in all the
problems studied in this course.
Concepts such as inheritance, abstract classes, interfaces and implementation
will be studied.
Basic techniques for analyzing the efficiency of algorithms
and standard algorithms for searching and sorting will be
examined.
Students will develop their projects on unix-based operating system
in Sun Micro's Java language.