Required Text A course book and lab manual can be purchased from the ... Extra
practical work can be done either in the Computer Science laboratory or on a.
Stage I courses You must take COMPSCI 101 - Principles of Programming followed by COMPSCI 105 - Principles of Computer Science (or COMPSCI 107 - Computer Science Fundamentals) if you plan to major in Computer Science. Note: You must pass the practical (labs and assignments) and the theory (test and exam) sections separately to pass the course as a whole for all Stage I COMPSCI courses. Key to course code information COMPSCI
Computer Science course
101-111
Stage I level courses
210-280
Stage II level courses
313-380
Stage III level courses
SS
Summer School
S1
Semester 1
S2
Semester 2
C
City Campus
T
Tāmaki Innovation Campus
COMPSCI 111/111G An Introduction To Practical Computing
SS C, S1 C, S2 C
A practical introduction to computing that will build confidence and familiarity with computers. Topics include: website design, an overview of computer hardware and operating systems, effective use of common applications, using the Internet as a communication medium, applying programming concepts, and social implications of technology. As part of their practical work, students will create web pages, and develop skills with a variety of home and office applications including word processing, spreadsheets, PowerPoint and databases. Prerequisites
None
Assessment
20% lab assignments, 20% test, 60% examination
Coordinator
Ann Cameron
Required Text
A course book and lab manual can be purchased from the University Book Shop.
Note
There are three lectures per week, and students will be required to attend one three-hour laboratory per week.
Important
You must pass the practical (labs) and the theory (test and exam) sections separately to pass the course as a whole.
Web
www.cs.auckland.ac.nz/courses/compsci111s1c/
2014 Computer Science | 21
COMPSCI 101 Principles of Programming SS C This course introduces computer programming in the Java programming language. The main focus is on learning to understand the detailed requirements of a programming task, and writing programs that are well structured, correct and easy to read. The course covers simple variables, expressions, input and output, control structures and methods, an introduction to the standard Java classes, single dimensional arrays and graphical user interface programming. Assessment
15% assignments, 10% labs, 15% test, 60% exam
Required Text
The coursebook and a code examples booklet can be purchased from the University Book Shop.
S1 C, S2 C This course introduces computer programming using the Python programming language. The main focus is on learning to understand the detailed requirements of a programming task, and writing programs that are well structured, correct and easy to read. The course covers simple variables, expressions, input and output, control structures, functions, using standard data structures such as lists and dictionaries, and using standard Python modules. Assessment
25% labs, 15% test, 60% exam
Required Text
TBA
Important
You must pass the practical and the theory (test and exam) sections separately to pass the course as a whole.
Web
www.cs.auckland.ac.nz/courses/compsci101s1c/
Note
Students who have a B+ grade or better in COMPSCI 101 may apply for a concession to enrol in COMPSCI 210 concurrently with COMPSCI 105.
This course has a significant practical component. Students attend three lectures and one two-hour lab session per week. Extra practical work can be done either in the Computer Science laboratory or on a modern computer elsewhere. COMPSCI 105 Principles of Computer Science SS C, S1 C The 105 course must be taken by all students wishing to advance in Computer Science. It extends the programming skills of the Principles of Programming course, emphasising good software design through an appreciation of data structures and code efficiency. The course provides an introduction to multidimensional arrays, exception handling, recursion, and file input and output. The importance of abstraction and abstract data types is illustrated through the study of traditional data structures (such as lists, stacks, queues, trees, priority queues, heaps and hash tables). The performance characteristics of different implementations of these data structures are studied, aided by an introduction to the performance of searching and sorting algorithms. Assessment
25% assignments, 10% test and 65% exam
Required Text
Data Abstraction and Problem Solving with Java: Walls & Mirrors (2nd edition) Frank M. Carrano & Janet J. Pritchard - Addison Wesley
22 | 2014 Computer Science
S2 C The 105 course must be taken by students who have completed 101 and wish to advance in Computer Science. It extends the programming skills of the Principles of Programming course, focusing on data structures and efficient ways to manipulate data. The course is taught using Python. Topics include: recursion, regular expressions, data interchange, abstract data types, linear data structures (lists, stacks, queues), non-linear data structures (heaps, hash tables, trees), searching and sorting. Assessment
25% labs, 15% test, 60% exam
Required Text
TBA
Prerequisites
COMPSCI 101
Important
You must pass the practical and the theory (test and exam) sections separately to pass the course as a whole.
Web
www.cs.auckland.ac.nz/courses/compsci105s1c/
This course has a significant practical component. Students attend three lectures and one tutorial/lab per week. Extra practical work can be done either in the Computer Science laboratory or on a modern computer elsewhere.
COMPSCI 107 Computer Science Fundamentals
S1 C
This is the entry course to Computer Science for students with prior programming knowledge. It focuses on data structures and efficient ways to manipulate data. Topics include: a brief recap of programming concepts, recursion, regular expressions, data interchange, abstract data types, linear data structures (lists, stacks and queues), non-linear data structures (heaps, hash tables, trees), searching and sorting. Prerequisites
Achievement Standards NCEA Level 3: Digital Technologies and Programming : 91637 Develop a complex computer program for a specified task, 91636 Demonstrate understanding of areas of computer science, or equivalent programming experience, or Departmental approval
Assessment
25% assignments, 15% test and 60% exam
Important
You must pass the practical (labs) and the theory (test and exam) sections separately to pass the course as a whole.
Web
www.cs.auckland.ac.nz/courses/compsci107s1c/
This course has a significant practical component. Students attend three lectures and one two-hour lab session per week. Extra practical work can be done either in the Computer Science laboratory or on any modern computer elsewhere.
2014 Computer Science | 23