COMP1127
The primary goal of the course is to introduce students to the big ideas in Computer Science, and how they are used to control the complexity of developing large computational systems. In this course, recognising patterns of problem solving is more important than the efficiency of the solutions themselves. An interpreted language is used to facilitate rapid feedback to the student as she experiments with proposed solutions to a problem. We hope that this mode of interaction will build confidence in students as they learn the joys and challenges of programming. This course continues the entry level course COMP1126. It covers concepts and tools that are essential in strengthening the learning of programming. These include data structures and higher order functions.
- Building Abstractions: Compound Data (Lists and Trees); Abstract Data Types.
- Controlling Interactions: Generic operations; Self-Describing Data; Message Passing; Streams and Infinite Data Structures; Object-oriented Programming.
- Final Exam (2 hours) 60%
- Coursework 40%
- 1 written assignment/ programming project 15%
- 1 in-course test (1 hour) 10%
- 5 labs 10%
- 1 quiz 5%
Students will be required to pass both the coursework and the final examination to pass the course.
Anyone of the following:
- A CAPE (Units 1 and 2 {or A-level}) Science subject;
- ECON1003;
- Teacher’s College Diploma or Associate Degree in Mathematics or Science or Information Technology