40005 Advanced iOS Development
Warning: The information on this page is indicative. The subject outline for a
particular session, location and mode of offering is the authoritative source
of all information about the subject for that offering. Required texts, recommended texts and references in particular are likely to change. Students will be provided with a subject outline once they enrol in the subject.
Subject handbook information prior to 2025 is available in the Archives.
Credit points: 6 cp
Result type: Grade and marks
Requisite(s): 42889 iOS Application Development OR 41889 Application Development in the iOS Environment
Description
This subject provides students with an advanced understanding of iOS application development using Swift and SwiftUI. Students will explore a range of advanced concepts, frameworks, and tools to build robust and innovative iOS applications. The subject emphasises practical exposure to industry-standard development practices and encourages students to develop solutions that meet real-world software requirements.
Subject learning objectives (SLOs)
Upon successful completion of this subject students should be able to:
1. | Design well-structured solution blueprints that satisfy given software requirements within the iOS development environment. (C.1) |
---|---|
2. | Develop skills and competencies in implementing a solution using Swift programming language with the iOS development environment. (D.1) |
3. | Work with teams when designing and developing iOS applications and communicate the developed solution to a wider audience. (E.1) |
Course intended learning outcomes (CILOs)
This subject also contributes specifically to the development of the following Course Intended Learning Outcomes (CILOs):
- Design Oriented: FEIT graduates apply problem solving, design and decision-making methodologies to develop components, systems and processes to meet specified requirements. (C.1)
- Technically Proficient: FEIT graduates apply abstraction, mathematics and discipline fundamentals, software, tools and techniques to evaluate, implement and operate systems. (D.1)
- Collaborative and Communicative: FEIT graduates work as an effective member or leader of diverse teams, communicating effectively and operating within cross-disciplinary and cross-cultural contexts in the workplace. (E.1)
Teaching and learning strategies
This subject will be delivered through a series of lectures and labs. Students will attend a lecture (1.5 hours) and a lab class (1.5 hours) each week. The lecture includes various kinds of activities, such as topic/concept explanation by the lecturer, Q/A, student discussion, student presentation and software demonstration.
The lectures are supported by hands-on lab sessions to complement the concepts taught during the lectures. Each lab class includes explanation of concepts with examples by the tutor and exercises for students to practise to gain better understanding of the iOS development environment for knowledge presentation, and knowledge-based reasoning and inference for better decision making.
Content (topics)
- Introducing SwiftUI
- Data Management
- Advanced API Interaction and Integration
- Advanced Software Development Practices
Assessment
Assessment task 1: Solution Pitch Evaluation
Intent: | Check students' knowledge on the subject and provide feedback on progress. |
---|---|
Objective(s): | This assessment task addresses the following subject learning objectives (SLOs): 1 This assessment task contributes to the development of the following Course Intended Learning Outcomes (CILOs): C.1 |
Type: | Presentation |
Groupwork: | Individual |
Weight: | 10% |
Length: | 2 minutes |
Assessment task 2: Project 1 - iOS application development with object and protocol-oriented concepts
Intent: | This project will enhance the students’ understanding and skills in building a practical iPhone/iPad application by applying the concepts of object and protocol-oriented concepts and managing unexpected user’s input. |
---|---|
Objective(s): | This assessment task addresses the following subject learning objectives (SLOs): 1 and 2 This assessment task contributes to the development of the following Course Intended Learning Outcomes (CILOs): C.1 and D.1 |
Type: | Project |
Groupwork: | Individual |
Weight: | 30% |
Length: | 200-300 lines of code |
Assessment task 3: Project 2 - iOS application development with external tools
Intent: | This group project will enhance practical skills in applying advanced iOS concepts to design and a taste on developing a market-ready prototype iOS applications utilising variety of external tools and platforms and mechanism introduced so far in the course to handle and reporting errors. |
---|---|
Objective(s): | This assessment task addresses the following subject learning objectives (SLOs): 1 and 2 This assessment task contributes to the development of the following Course Intended Learning Outcomes (CILOs): C.1 and D.1 |
Type: | Project |
Groupwork: | Individual |
Weight: | 30% |
Length: | 300 – 400 lines of code |
Assessment task 4: Project 3 - iOS application development with Further external tools
Intent: | This group project will enhance practical skills in applying advanced iOS concepts to design and a taste on developing a market-ready prototype iOS applications utilising variety of external tools and platforms and mechanism to handle and reporting errors. |
---|---|
Objective(s): | This assessment task addresses the following subject learning objectives (SLOs): 1 and 3 This assessment task contributes to the development of the following Course Intended Learning Outcomes (CILOs): C.1 and E.1 |
Type: | Project |
Groupwork: | Group, individually assessed |
Weight: | 30% |
Length: | 5 minutes presentation and live project demonstration. |
Minimum requirements
In order to pass the subject, a student must achieve an overall mark of 50% or more.
Recommended texts
iOS Developer Center
https://developer.apple.com/devcenter/ios/index.action
There is a vast range of articles, downloads (including XCode), sample code, etc located here. Any iOS developer will make extensive use of this resource.