Advanced programming topics are presented and applied with programming projects and exercises. Topics surveyed include: searching and sorting routines, introductory algorithm analysis, modular software design, abstract data types, recursion, I/O operations and file handling. Students will also become familiar with modular and object-oriented programming techniques. Development and maintenance of software libraries will be introduced along with various software life-cycles. Prerequisite: 150. FT