This course applies object-oriented techniques for systematic problem analysis and the managing of program complexity using abstraction. Specifications, design, coding, testing, and documentation of large multi-file programs are covered. It uses advanced language features such as classes, strings, non-text files, pointers, and recursion. Abstract data types such as stacks, queues, lists, binary trees, heaps/priority queues, hash tables, and graphs are examined.
- This unit introduces the learner to the processes that repeat themselfs in a self-similar way. The processes can either call themselves directly or indirectly during their execution. The unit will enable the learner to understand the recursion process and solve problems that are recursive in nature.