|
This course is a continuation of algorithmic problem solving but introduces more advanced methods, particularly object oriented design. Topics include procedural abstraction, user defined static, dynamic and generic data types, linked structures, sorting and searching, event driven programming and recursion. Abstract data types, inheritance and polymorphism are examined in detail. Principles of rigorous programming practice and software development are emphasized. (Offered every semester.) |