Accessibility Skip to Global Navigation Skip to Local Navigation Skip to Content Skip to Search Skip to Site Map Menu

COMP162 Foundations of Computer Science

Due to COVID-19 restrictions, a selection of on-campus papers will be made available via distance and online learning for eligible students.
Find out which papers are available and how to apply on our COVID-19 website

An introduction to computer programming suitable for beginners with some prior experience. Builds on and extends basic Java and object oriented programming. Introduces broader programming concepts and other languages.

COMP162 marks the next step in your journey to becoming a computer scientist. Following on from COMP 161, this paper will expand your knowledge of the Java programming language to more advanced concepts that are fundamental to theoretical and applied computing. COMP162 is a prerequisite for all 200-level Computer Science papers from 2022 onwards. We offer COMP162 in second semester and summer school.

Paper title Foundations of Computer Science
Paper code COMP162
Subject Computer and Information Science
EFTS 0.1500
Points 18 points
Teaching period Semester 2 (On campus)
Domestic Tuition Fees (NZD) $1,092.15
International Tuition Fees (NZD) $5,004.75

^ Top of page

Prerequisite
COMP 161 or (COMP 151 passed with a grade of at least B). See also Eligibility section below.
Restriction
COMP 160
Schedule C
Arts and Music, Commerce, Science
Notes
(i) Students entering from COMP151 will be provided with materials and exercises to transfer from Python to the Java programming language. (ii) Students with other programming experience (e.g., appropriate NCEA Level 3 standards) may sit an Advanced Placement Test for direct entry to COMP162. Enquiries about this option should be directed to adviser@cs.otago.ac.nz in advance of the start of semester.
Eligibility

Students cannot enrol in both COMP162 (second semester) and one of the non-standard versions of COMP161 (N1 or N2), because this does not meet the prerequisite requirement.

Contact

Computer Science Adviser

Teaching staff

Course Co-ordinator: Steven Livingstone

Lecturers for Semester 1 to be advised.

Laboratories: Sandy Garner

Paper Structure

Lecture and Lab Topics:

  • Introduction and review of Java basics 1
  • Introduction and review of Java basics 2
  • Hierarchies 1, inheritance
  • Hierarchies 2, visibility, overriding
  • Libraries, interfaces, abstract classes
  • Algorithms
  • Recursion
  • Array algorithms
  • Linked lists 1
  • Linked lists 2
  • Algorithm analysis
  • Collections & Generics
  • Stacks
  • Queues
  • Insertion & Selection sort
  • Quick sort
  • Object oriented programming 1
  • Object oriented programming 2
  • Comparative Languages 1
  • Comparative Languages 2
  • Comparative Languages 3
  • Comparative Languages 4
  • C and memory management 1
  • C and memory management 2
  • Compilers
  • Ethical issues and current topics in programming

Assessment:

  • A sequence of practical mastery tests worth 40%.  Each mastery test must be passed in order to be eligible to sit the next one.
  • A final summary test worth 60%.
Teaching Arrangements
  • Two lectures per week (one hour each)
  • Two labs per week (two hours each)
Textbooks

To be advised

Course outline

View course outline for COMP 162

Graduate Attributes Emphasised
Lifelong learning, Critical thinking, Information literacy, Self-motivation.
View more information about Otago's graduate attributes.
Learning Outcomes

This paper will enable students to:

  • Understand intermediate concepts relating to computer programming
  • Demonstrate the ability to design and develop intermediate computer programs
  • Develop knowledge and skills relating to problem solving, program design, object oriented programming, data structures and algorithms

^ Top of page

Timetable

Semester 2

Location
Dunedin
Teaching method
This paper is taught On Campus
Learning management system
Blackboard

Computer Lab

Stream Days Times Weeks
Attend one stream from
A1 Monday 11:00-12:50 28-34, 36-41
A2 Monday 14:00-15:50 28-34, 36-41
A5 Tuesday 11:00-12:50 28-34, 36-41
A6 Tuesday 14:00-15:50 28-34, 36-41
A7 Tuesday 17:00-18:50 28-34, 36-41
AND one stream from
B1 Wednesday 14:00-15:50 28-34, 36-41
B4 Thursday 14:00-15:50 28-34, 36-41
B5 Thursday 17:00-18:50 28-34, 36-41
B6 Friday 11:00-12:50 28-34, 36-41
B7 Friday 14:00-15:50 28-34, 36-41

Lecture

Stream Days Times Weeks
Attend
A1 Wednesday 09:00-09:50 28-34, 36-41
Friday 09:00-09:50 28-34, 36-41

An introduction to computer programming suitable for beginners with some prior experience. Builds on and extends basic Java and object oriented programming. Introduces broader programming concepts and other languages.

COMP162 marks the next step in your journey to becoming a computer scientist. Following on from COMP 161, this paper will expand your knowledge of the Java programming language to more advanced concepts that are fundamental to theoretical and applied computing. COMP162 is a prerequisite for all 200-level Computer Science papers from 2022 onwards. We offer COMP162 in second semester and summer school.

Paper title Foundations of Computer Science
Paper code COMP162
Subject Computer and Information Science
EFTS 0.1500
Points 18 points
Teaching period(s) Summer School (On campus)
Semester 2 (On campus)
Domestic Tuition Fees Tuition Fees for 2022 have not yet been set
International Tuition Fees Tuition Fees for international students are elsewhere on this website.

^ Top of page

Prerequisite
COMP 161 or (COMP 151 passed with a grade of at least B). See also Eligibility section below.
Restriction
COMP 160
Schedule C
Arts and Music, Commerce, Science
Notes
(i) Students entering from COMP151 will be provided with materials and exercises to transfer from Python to the Java programming language. (ii) Students with other programming experience (e.g., appropriate NCEA Level 3 standards) may sit an Advanced Placement Test for direct entry to COMP162. Enquiries about this option should be directed to adviser@cs.otago.ac.nz in advance of the start of semester.
Eligibility

Prior programming experience is required, for example via the normal requisites of COMP161, COMP151 (B or better), or previous computing experience (e.g., appropriate NCEA level 3 standards) subject to sitting an Advanced Placement Test.

Contact

Computer Science Adviser

Teaching staff

Course Co-ordinator: Steven Livingstone

Lecturers for Summer School: Stefanie Zollmann, Veronica Liesaputra

Lecturers for Semester 1: Steven Livingstone

Laboratories: Karen Gray

Paper Structure

Lecture and Lab Topics:

  • Introduction and review of Java basics 1
  • Introduction and review of Java basics 2
  • Hierarchies 1, inheritance
  • Hierarchies 2, visibility, overriding
  • Libraries, interfaces, abstract classes
  • Algorithms
  • Recursion
  • Array algorithms
  • Linked lists 1
  • Linked lists 2
  • Algorithm analysis
  • Collections & Generics
  • Stacks
  • Queues
  • Insertion & Selection sort
  • Quick sort
  • Object oriented programming 1
  • Object oriented programming 2
  • Comparative Languages 1
  • Comparative Languages 2
  • Comparative Languages 3
  • Comparative Languages 4
  • C and memory management 1
  • C and memory management 2
  • Compilers
  • Ethical issues and current topics in programming

Assessment:

  • A sequence of practical mastery tests worth 40%.  Each mastery test must be passed in order to be eligible to sit the next one.
  • A final exam worth 60%.
Teaching Arrangements
  • Two lectures per week (one hour each)
  • Two labs per week (two hours each)
Textbooks

To be advised

Course outline

View course outline for COMP 162

Graduate Attributes Emphasised
Lifelong learning, Critical thinking, Information literacy, Self-motivation.
View more information about Otago's graduate attributes.
Learning Outcomes

This paper will enable students to:

  • Understand intermediate concepts relating to computer programming
  • Demonstrate the ability to design and develop intermediate computer programs
  • Develop knowledge and skills relating to problem solving, program design, object oriented programming, data structures and algorithms

^ Top of page

Timetable

Summer School

Location
Dunedin
Teaching method
This paper is taught On Campus
Learning management system
Blackboard

Computer Lab

Stream Days Times Weeks
Attend one stream from
X1 Monday 09:00-10:50 2-5, 7
Tuesday 09:00-10:50 2-7
Wednesday 09:00-10:50 2-7
Thursday 09:00-10:50 2-7
Friday 09:00-10:50 2-7
X2 Monday 12:00-13:50 2-5, 7
Tuesday 12:00-13:50 2-7
Wednesday 12:00-13:50 2-7
Thursday 12:00-13:50 2-7
Friday 12:00-13:50 2-7

Lecture

Stream Days Times Weeks
Attend
A1 Monday 11:00-11:50 2-5, 7
Tuesday 11:00-11:50 2-7
Wednesday 11:00-11:50 2-7
Thursday 11:00-11:50 2-7
Friday 11:00-11:50 2-7

Semester 2

Location
Dunedin
Teaching method
This paper is taught On Campus
Learning management system
Blackboard

Computer Lab

Stream Days Times Weeks
Attend one stream from
A1 Monday 11:00-12:50 28-34, 36-41
A2 Monday 14:00-15:50 28-34, 36-41
A3 Monday 16:00-17:50 28-34, 36-41
A4 Tuesday 09:00-10:50 28-34, 36-41
A5 Tuesday 11:00-12:50 28-34, 36-41
A6 Tuesday 14:00-15:50 28-34, 36-41
A7 Tuesday 17:00-18:50 28-34, 36-41
AND one stream from
B1 Wednesday 14:00-15:50 28-34, 36-41
B2 Thursday 09:00-10:50 28-34, 36-41
B3 Thursday 11:00-12:50 28-34, 36-41
B4 Thursday 14:00-15:50 28-34, 36-41
B5 Thursday 17:00-18:50 28-34, 36-41
B6 Friday 11:00-12:50 28-34, 36-41
B7 Friday 14:00-15:50 28-34, 36-41

Lecture

Stream Days Times Weeks
Attend
A1 Wednesday 09:00-09:50 28-34, 36-41
Friday 09:00-09:50 28-34, 36-41