In this continuation of CC102: Computer Programming 1, students are introduced to the principles and practices required to solve a more advanced set of problems. Students further develop their knowledge of the principles of object-oriented design and programming, including the use of inheritance, and developing graphical user interfaces.