Unit rationale, description and aim
As software systems grow in complexity and interactivity, there is a growing demand for graduates who can develop efficient, scalable, and user-friendly applications. Building upon foundational programming skills, this unit enables students to deepen their understanding of advanced programming concepts that are essential for tackling real-world challenges in modern computing environments.
This unit extends the fundamental programming knowledge acquired in introductory programming by introducing students to more advanced and applied programming concepts. It covers event-driven programming, graphical user interface (GUI) design, file input/output operations, generics, data structures, and algorithms. Students will learn to design and implement moderately complex applications that interact with real-world data through user interfaces. Emphasis is placed on the effective use of computing resources—including CPU cycles, memory management, and I/O operations—through the application of appropriate data structures and algorithms. This focus supports sustainable computing practices by promoting energy-efficient programming, thereby contributing to the stewardship of natural and technological resources.
The aim of this unit is to equip students with advanced programming skills and the ability to design efficient, maintainable, and interactive software systems that demonstrate an awareness of both technical performance and environmental sustainability.
Campus offering
No unit offerings are currently available for this unit.Learning outcomes
To successfully complete this unit you will be able to demonstrate you have achieved the learning outcomes (LO) detailed in the below table.
Each outcome is informed by a number of graduate capabilities (GC) to ensure your work in this, and every unit, is part of a larger goal of graduating from ACU with the attributes of insight, empathy, imagination and impact.
Explore the graduate capabilities.
Demonstrate high-level working knowledge and under...
Learning Outcome 01
Develop application programs with correct and appr...
Learning Outcome 02
Design and implement applications that exhibit eff...
Learning Outcome 03
Critically evaluate data structures and algorithms...
Learning Outcome 04
Content
Topics covered:
- Java OOP
- Java Event Model
- Java GUI programming
- Text and binary I/O
- Generics
- Recursion
- Data structures
- Developing efficient algorithms
- Sorting algorithms
- Stewardship of computing resources through appropriate use of data structures and algorithms
Assessment strategy and rationale
A range of assessment procedures will be used to meet the unit learning outcomes and develop graduate attributes consistent with University assessment requirements.
The first assessment item is a regular programming-based exercise that consists of programming environment setup, quiz and practical problem solving. This assessment progressively scaffolds student learning and prepares students for the next assessments. The second and the final programming case study assessment will consist of one or several small to medium advanced programming case studies. Students will design and implement applications exhibiting effective user interfaces and/or efficient functional components that contribute to the stewardship of computing resources.
The assessments for this unit are designed to demonstrate the achievement of each learning outcome. To pass this unit, students are required to achieve an overall mark of at least 50%
Overview of assessments
Assessment Task 1: Advanced programming studio T...
Assessment Task 1: Advanced programming studio
The first assessment is a regular advanced programming-based exercise which consists of programming environment setup, quiz and practical problem solving. It will assess on the understanding and application of advanced programming concepts including Java GUI, program I/O and generics and data structure and algorithm.
Submission Type: Individual
Assessment Method: Cumulative assessment
Artefact: questions answers and documented code
50%
Assessment Task 2: Advanced programming case stud...
Assessment Task 2: Advanced programming case study
The second assessment will consist of one or several small to medium advanced programming case studies. Student will design and implement applications that exhibit effective user interfaces and efficient functional components that contribute to the stewardship of computing resources. The aim of this assessment is to enable students to undertake a realistic application development process.
Submission Type: Individual
Assessment Method: Programming and problem solving
Artefact: Case study documentation and code
50%
Learning and teaching strategy and rationale
Mode of Delivery
This unit is offered in different modes to support varied learning needs and enhance participation, particularly for isolated or marginalised groups.
Attendance Mode
Students attend weekly face-to-face classes (in person or online), with required preparation beforehand. Most students spend around one hour preparing before workshops and one or more hours afterwards reviewing content. Online platforms provide additional preparatory and practice activities to support learning.
Multi-Mode
In this mode, students attend face-to-face classes in intensive blocks scheduled by the School. As with attendance mode, preparation is required before workshops, and students have access to online resources for study and revision.
ACU Online
This fully online mode uses active learning to promote engagement and real-world application. Students participate in asynchronous discussions, complete interactive activities, and are encouraged to contribute personal examples. Regular feedback supports progress and learning.
Across all modes, students are expected to engage in approximately 150 hours of study, including classes, readings, online participation, and assessments.