Building a Native iOS App From Scratch


On this course, students will be guided through the native iOS app process, picking up programming tips and techniques along the way. Methods learned can be applied to other projects.

Created By

Andrew G

11-14, 14-16, 16-18, Adult
Computing and IT

10 HOURS

10 LESSONS

Building a Native iOS App From Scratch

professional-learning

Course Overview



On this course, students will learn how to build a native iOS app from nothing. Students won't be expected to have built an app before, but a familiarity with some form of programming will certainly help. Modern first-party frameworks like SwiftUI and Combine will be used to structure UI and data flow respectively. This programme will cover topics such as source control, tricks to fix bugs that arise, saving data to the device with core data, making and responding to network requests and how to structure a project in a scalable way. Students should have a Mac or a machine that runs macOS and they must have installed and be able to run Xcode. The code will be provided after each session to play around with outside of lessons and doing so is strongly encouraged.

Course Content



10 LESSONS

10 HOURS Total Length

Lesson 1

Hello World and Introduction to SwiftUI

60 minutes

Lesson 2

Network Requests and Introduction to Reactive Programming

60 minutes

Lesson 3

Expanding Functionality With Bindings: Responding to User Input

60 minutes

Lesson 4

Data Persistence and Introduction to Core Data

60 minutes

Lesson 5

Navigation and Refactoring

60 minutes

Lesson 6

Searching

60 minutes

Lesson 7

Limitations of SwiftUI and Integrating UIKit

60 minutes

Lesson 8

Making an Action Extension

60 minutes

Lesson 9

Making an iOS Fourteen Home Screen Widget Ten

60 minutes

Lesson 10

Student Participation: Implementing Your Suggestions

60 minutes

Key Skills


Swift

Xcode

SwiftUI

Apps

Educator


Andrew G

Programming and Computer Science Educator

Andrew's services range from teaching programming from scratch to helping fix and improve university-level coursework.