Description
In this course, you will learn:
- Hands-on experience with Swift 5, and prepares you to start developing your own apps and games using this popular language.
- Data types, conditional logic, methods, functions, classes and structs, and more—explaining what you need to know to become proficient in programming with Swift.
Syllabus:
- Introduction
- Begin an adventure with Swift 5
- Quest accepted: What you should know
1. Getting Started
- Swift retrospective
- Getting Xcode
- Reviewing the exercise files
2. Getting to Know Your Data
- The quest begins: variables
- Variables and constants
- Type safety and inference
- Logging and commenting
- Swift operators
- Understanding strings
- Working with strings
- Type conversions
- Bools and logical operators
- Introducing optionals
- Accessing documentation
- Challenge: Player stats
- Solution: Player stats
3. Working with Collections
- Gathering inventory with collections
- Swift arrays
- Core array methods
- Swift dictionaries
- Core dictionary methods
- Working with sets
- Core set methods
- Swift tuples
- Challenge: Merchant shop
- Solution: Merchant shop
4. Application Control Flow
- Controlling your destiny
- The if statement
- Unwrapping optionals
- Using For-In Loops
- While loops
- The switch statement
- The guard statement
- Challenge: Game logic
- Solution: Game logic
5. The Wide World of Functions
- Leveling the playing field
- Basic functions
- Overloading functions
- Complex functions
- Function types
- Understanding closures
- Using closures
- Type aliasing
- Challenge: Battle grounds
- Solution: Battle grounds
6. Classes, Structs and Beyond
- Populating the game world
- Value vs reference types
- Basic Swift classes
- Access modifiers and properties
- Subclassing in swift
- Basic Swift structs
- Chaining optionals
- Challenge: Inventory system
- Solution: Inventory system
7. Leveling Up with Enums, Protocols, and Errors
- Final stage, final boss
- Swift enumerations
- Raw & associated values
- Introducing protocols
- Using extensions
- Throwing errors
- Handling errors
- Challenge: Battle actions
- Solution: Combat actions