This course introduces the basic concepts and terminology of object technology. It investigates object-oriented paradigm including Object Oriented Programming (OOP), Analysis and Design, and show how to use these programming schemes with the Java and C++ programming languages to build “good” programs. Current methodology and techniques are emphasized. The use of object-oriented features such as encapsulation, information hiding, inheritance and polymorphism is reinforced by class assignments and programming exercises.