The Sample App

In this course, you’ll be building a maze app. You’ll be doing this in the homework, and in the last day, you’ll add all the final touches. This app features a rabbit who needs to navigate through a hedge maze to find the carrot at the end of it. The user will be able to control the rabbit by tapping on the directional arrows at the bottom of the screen.

Maze app
Maze app

The maze itself is not a random maze. This is a “predetermined” maze that you will build into your app. At the end of this course, you’ll be able to add your own custom mazes. Once you “level up” your coding skills, you may want to revisit this course again and create some truly random creations.

Covered concepts

In creating this maze app, you will learn various foundational topics that you will use throughout your iOS development journey. You can think of this course as an appetizer and with these topics being a roadmap for future studies. Here are the covered various topics:

  • Variables & Data Types: Variables are the atoms in your program. They contain all the necessary data for it to function. You’ll quickly learn that variables have different types that contain different information. If a variable is an atom, then a data type is the element such as Hydrogen, Helium, Carbon, etc.

  • Objects: Swift is an object-orientated programming (OOP) language so understanding how to work with objects is crucial to your success. This introductory course will not go too deep into OOP, but you’ll learn just enough to get you started.

  • Control Flow: With control flow, you can repeat certain tasks and making branching choices based on your data. Every program utilizes some sort of control flow. Your program is no exception.

  • SwiftUI: Whereas the Swift programming controls how your program will behave, SwiftUI is how your program will appear on the screen. You’ll learn how to compose a variety of views to create your maze and update the maze based on user interactivity.

This all may seem like a lot of concepts – and it is a lot of concepts – but you will learn these topics one step at a time. You will also get plenty of opportunities to “put your knowledge to the test” by various homework assignments.

Make sure to follow with the demo videos and do all the homework assignments. While this course is designed to be completed in five days, there is no prize for completing it on-time or even ahead of time. If you find yourself stuck or confused, then re-review the lesson.

Finally, make sure to review these lessons when you are well rested and hydrated. You should read all the written materials and follow along the demos in quiet space without distractions.

See forum comments
Download course materials from Github
Previous: Introduction Next: The Swift Playground App