SwiftUI Online Course
SwiftUI - Build Amazing Apps - With Much Less Code
Apple’s SwiftUI is becoming one of the most popular tools for building iOS applications. It is as easy as dragging and dropping, and it uses five times less code compared to UIkit and storyboards.
This course will teach you how to use SwiftUI features and declarative programming to build rich and robust applications for the Apple store.
The course starts with an introduction to SwiftUI and Swift language and gives you a tour of Xcode and Previews. Next, you will become familiar with the basic topics of SwiftUI, such as constants, variables, operators, classes, structs, properties, initializers, error handling, and stacks. Moving along, you will understand the role of text fields, state, image, and modifiers in SwiftUI. Toward the end, you will learn to build interesting applications in SwiftUI to encapsulate your learning.
By the end of this course, you will be able to build modern and reliable apps using SwiftUI that can be deployed to any Apple device.
Course Curriculum
Introduction – What is SwiftUI?
- Introduction – What is SwiftUI?
Preview and the New Xcode
- Xcode and Previews
Constants and Variables
- Constants and Variables - Data Types - Part 1
- Constants and Variables - Data Types - Part 2
Strings
- Strings - Working with Strings and Their Properties and Methods - part 1
- Strings - Working with Strings and Their Properties and Methods - part 2
Operators
- Operators - Part 1 - Unary, Binary, Ternary, Assign, and Compound
- Operators - Part 2 – Comparison, Nil, Range, and Logical
Classes and Structs
- Classes and Structs - Part 1 - Syntax, Properties, and Initialization
- Classes and Structs - Part 2 - Value and Reference Types and Identity Operator
Properties
- Properties Part 1 - Stored Properties
- Properties - Part 2 - Lazy Properties
- Properties - Part 3 - Computed Properties
- Properties - Part 4 - Property Observers
- Properties - Part 5 - Static Properties
Initializers
- Initializers - Part 1 - Syntax - Value Type Delegation
- Initializers - Part 2 - Designated and Convenience Initializers
- Initializers - Part 3 - Initializer inheritance
- Initializers - Part 4 - Required and Failable Initializers
Control Flow
- If and If-else Statements
- Switch Statements
- Guard Statement
- For Loop
- While and Repeat While Loop
- Control Transfer Statements
Functions
- Functions - Part 1 – Parameters, Arguments, and Return Values
- Functions - Part 2 - Returning Multiple Values
- Functions - Part 3 - Argument Labels and Parameter Names
- Functions - Part 4 – Variadic, In-out, and Nested Functions
Collections
- Arrays
- Dictionaries
- Sets
Optionals
- Optionals
Tuples
- Tuples
Enumerations
- Enums - Part 1 - Declaring and Iterating over Enum
- Enums - Part 2 - Associated and Raw Values
- Enums - Part 3 - Recursive Enumerations
Error Handling
- Error Handling
Stacks (VStack – HStack – ZStack)
- Stacks (VStack – HStack - ZStack)
Text and its Modifiers
- Text and Modifiers - Part 1
- Text and Modifiers - Part 2
- Text and Modifiers - Part 3
TextField and State
- TextField and State
Image and its Modifiers
- Images and Modifiers - Part 1
- Images and Modifiers - Part 2
The Dog Breed Application
- Dog Breed Application Introduction
- Dog Breed Application - Text, Image, View Modifiers, Stacks, Gradients, and Shapes – Part 1
- Dog Breed Application - Adding the Data, Text Labels, Icons, and the Identifiable Protocol – Part 2
- Dog Breed Application - Lists - Navigation - Creating and Populating Rows with Data – Part 3
- Dog Breed Application - Passing the Row Data to the Detail View – Part 4
Weather Application
- Weather Application Introduction
- Weather Application - Getting the App Id, Setting Up the Data Model and Services – Part 1
- Weather Application - Creating the View Model Class – ObservableObject – Part 2
- Weather Application - Designing the User Interface (UI) – Part 3
- Weather Application – Refactoring – Part 4
- Weather Application - Adding Animation – Part 5
Core Data and SwiftUI –To-do List Application
- To-do List Application Introduction
- To-do List Application - Setting up Core Data – Part 1
- To-do List Application - Setting Up the User Interface (UI) – Part 2
- To-do List Application - Configuring the List Rows – Part 3
- To-do List Application - Saving User data, Fetching and Displaying that Data – Part 4
- To-do List Application - Deleting data - Dark Theme – Part 5
Sunflower Application
- Sunflower Application Introduction
- Sunflower Application - Building the Sunflower Application – Part 1
- Sunflower Application - Adding the Animation – Part 2
- Sunflower Application - Creating the Settings Screen with Forms – Part 3
- Sunflower Application - Adding a Tab Bar to Navigate Between Screens – Part 4
- Sunflower Application - The EnvironmentObject - Controlling the Application Behavior through the Settings – Part 5
Core ML –Dog Breed ID Application
- Introduction to the Dog Breed ID Application
- Dog Breed ID Application - Setting Up the User Interface (UI) – Part 1
- Dog Breed ID Application - Working with the Camera API – Part 2
- Dog Breed ID Application - Adding Core ML – Part 3
- Dog Breed ID Application - Updating the UI with Predictions – Part 4
Guess the Color Application – A SwiftUI Game
- Guess the Color Application Introduction – A SwiftUI Game
- Guess the Color Application - Adding the Target and Guess Circles – Part 1
- Guess the Color Application - Adding the Picker and Target - Guess Rectangles – Part 2
- Guess the Color Application - Adding the Sliders and Button – Part 3
- Guess the Color Application - Adding a Reset - Scoring - Animation – Part 4
Adding a Video Player to Your SwiftUI Application
- Just Relax - Introduction
- Creating a Class Player – Part 1
- Creating the Controls – Part 2
- Adding the Controls to the Player – Part 3
- Populating the Picker – Part 4
Find Words – Building a Word Game that Gives the User the Choice of Three Languages
- Introduction
- Word Game - Setting up - Creating a Header View – Part 1
- Word Game – Creating a User Settings Class and Settings View – Part 2
- Word Game - Adding a Picker View – Part 3
- Word Game- Adding a Button and Functions to Display Word – Part 4
- Word Game - Adding the TextField and List Views – Part 5
- Word Game - Giving the User Feedback through Message Alerts – Part 6
- Word Game - Adding the Footer for Word Count and Average Letter per Word Views – Part 7
- Word Game - Adding a Launch Screen and Animating Gears – Part 8
- Word Game - Adding Haptic Feedback and Sound – Part 9