Lec. 3. Lab. 2. Credit 4. Prerequisite: C or better in CSC 1310; or C or better in CSC 2110 and CSC 2111. Theory and practice of object-oriented programming and design. Encapsulation, inheritance, dynamic binding, and polymorphism; and introduction to UML and design patterns. Students complete a series of weekly laboratory exercises for developing proficiency in object-oriented programming and design.