A second semester study of computing principles. Abstract data types, object-oriented programming concepts, and introductory topics of graphical-user interfaces, unit testing, and file structures. Students hone their problem solving skills through a variety of programming assignments. Prerequisite(s): COSC 160 or consent of instructor. As needed.