CSC 111 Computer Science II
Intermediate course in software design and development. Reinforces proficiency with core programming techniques by developing more challenging programs than in CSC 110 and will apply more advanced techniques and data structures such as recursion, file I/O, iterators, trees, etc. to create advanced programs and solutions. Students will improve their solutions to enhance efficiency and soundness. Topics include intermediate programming techniques; using advanced data types including multi-dimensional arrays, queues, lists, tables, trees, and maps; intermediate software design; intermediate problem solving techniques (such as recursion); fundamental algorithm analysis and design; intermediate object oriented design including classes, abstraction, polymorphism, inheritance, and encapsulation. Prerequisites: Completion of CSC 110 with a C or better and successful completion of the Programming Competency Exam.