SENG2200
10 units
2000 level
Course handbook
Description
This course places the programming from year 1 into its correct theoretical context with the following topics:- Elementary Language Theory and Specification.- Low level implementation of language mechanisms (e.g. pointers, parameters, activation records and method tables).- Implementation of software structures in both Java and C++.- A comparison of object models in different object-oriented languages.- An introduction to non-object programming paradigms, e.g. list processing, functional and declarative languages.
Availability2024 Course Timetables
Callaghan
- Semester 1 - 2024
Learning outcomes
On successful completion of the course students will be able to:
1. Use Elementary Language Theory and Specification to describe language features
2. Program using advanced features of object-oriented languages
3. Compare the low level implementation of language mechanisms, such as pointers and references, activation records, method tables, memory allocation/de-allocation and garbage collection, thread activation and communication
4. Compare and analyse alternate parameter passing mechanisms
5. Compare the object models in different object-oriented languages
6. Describe and evaluate advanced programming language features
7. Demonstrate an introductory understanding of concurrency and inter-process communication.
8. Demonstrate an introductory understanding of the area of machine intelligence
9. Describe the operation of non-object programming paradigms, eg. List processing, functional languages, and declarative languages.
Content
This course places the programming from year 1 into its correct theoretical context with the following topics:
- Elementary Language Theory and Specification
- A second object-oriented language
- Low level implementation of language mechanisms
- pointers
- activation records
- method tables
- memory allocation/de-allocation and garbage collection
- process and thread activation and communication
- Parameter passing mechanisms
- A comparison of object models in different object-oriented languages.
- An introduction to advanced programming language features.
- An introduction to concurrency and inter-process communication.
- An introduction to non-object programming paradigms, eg.
- list processing
- functional languages
- declarative languages.
Assumed knowledge
SENG1110 Introduction to Software Engineering 1 and SENG1120 Introduction to Software Engineering 2.
Assessment items
Written Assignment: Assignment 1
Written Assignment: Assignment 2
Written Assignment: Assignment 3
Quiz: Quiz
Formal Examination: Formal Examination
Compulsory Requirement: Pass requirement 40% - Must obtain 40% in this assessment item to pass the course.
Contact hours
Semester 1 - 2024 - Callaghan
Computer Lab-1
- Face to Face On Campus 2 hour(s) per week(s) for 13 week(s) starting in week 1
Lecture-1
- Face to Face On Campus 2 hour(s) per week(s) for 13 week(s) starting in week 1
Course outline
- SENG2200 - Semester 1, 2024 (Callaghan) (PDF, 334.4 KB)
The University of Newcastle acknowledges the traditional custodians of the lands within our footprint areas: Awabakal, Darkinjung, Biripai, Worimi, Wonnarua, and Eora Nations. We also pay respect to the wisdom of our Elders past and present.