Alert for students

Flinders City Campus availability offered in 2026.

Overview

This topic is concerned with the concepts and mechanisms that underlie modern programming languages as well as providing insights into the capabilities and limitations of languages, computers and algorithms. The topic combines both theoretical foundations and practical demonstrations of issues relating to programming and algorithm design. It teaches fundamental skills … For more content click the Read More button below.

Topic availabilities

To view topic availabilities, select an availability from the drop down, towards the top right of the screen.

Tuition pattern

To view tuition patterns, select an availability from the drop down, towards the top right of the screen.

Aims

  • To be able to specify and implement algorithms in an appropriate paradigm with an understanding of how to estimate what performance (efficacy and efficiency) can be expected and what resources will be required
  • To understand and be able to employ Logic Programming, Functional Programming, Object Oriented Programming and von Neumann (Procedural Programming) paradigms
  • To be able to set up, carry out and appropriately report on theoretical and practical evaluation (analysis and benchmarking) of computer routines and use this information to improve the performance of a program
  • To be able to write clear portable code that is independent on machine, language and compiler dependencies
  • To develop an ability to work alone both in a team, including to integrate work and build extensible systems, and to negotiate an ethical solution acceptable to a diverse range of stakeholders

Learning outcomes

On completion of this topic you will be expected to be able to:
1.
Understand the concept of paradigms and the effect of language, paradigm, data structure on the design of algorithms
2.
Have the basic foundations to deal with the broad range of programming languages, paradigms and libraries/APIs
3.
Use both theoretical and practical means of assessing the requirements of a proposed system and analysing the performance of an implemented system
4.
Utilize concepts from one paradigm in a language or context associated with another paradigm, choosing the most appropriate paradigm for the job
5.
Be adept at styles of programming and system development that are knowledge, rule and logic based rather than depending on low level step by step instructions

Assessments

To view assessment information, select an availability from the drop down, towards the top right of the screen.

Current students should refer to FLO for detailed assessment information, including due dates. Assessment information is accurate at the time of publishing.

For policy details, visit Assessments

Requisites information

Pre-requisites:
Anti-requisites: