This course introduces the principles and practices of Object Oriented Programming, using at least two OOP languages such as C++ and JAVA. The course also continues to build on the students’ experience with control structures (i.e., selection, iteration, and recursion), data types (e.g. arrays, strings, pointers, and dynamic structures), and fundamental algorithms for operations such as sorting and searching. Students will be able to sit the C++ Certified Associate Programmer (CPA) exam.