Special offers now — see discounted courses.
day
:
hour
:
min
:
sec
See special offers
Swift 5 Essential Training

Swift 5 Essential Training

4h 4mBeginner2019-04-11

Authors

Harrison Ferrone

Harrison Ferrone

Software Engineer, Game Developer, and Creative Technologist

Course details

Swift is the programming language for the Apple ecosystem—iOS, macOS, watchOS, and tvOS—and it’s a particularly expressive, fast, safe, and fun language that’s suitable for new and experienced programmers alike. In this course, instructor Harrison Ferrone helps you gain hands-on experience with Swift 5, and prepares you to start developing your own apps and games using this popular language. Following an overview of Swift’s evolution, Harrison takes you through each component of the language. He covers common data types, conditional logic, methods, functions, classes and structs, and more—explaining what you need to know to become proficient in programming with Swift. Examples and use cases are pulled from Harrison’s own games, providing a practical context for each programming element.

Learning objectives
Getting Xcode
Variables and constants
Logging and commenting
Working with strings
Bools and logical operators
Working with collections
Arrays and array methods
Sets and tuples
Working with conditional statements and loops
Working with functions
Classes in Swift
Enumerations
Handling errors

Skills covered

SwiftAppleEssential TrainingProgramming LanguagesSoftware Development

Concepts

0. Introduction

  • 01 - Begin an adventure with Swift 5
  • 02 - Quest accepted - What you should know

1. Getting Started

  • 03 - Swift retrospective
  • 04 - Getting Xcode
  • 05 - Reviewing the exercise files

2. Getting to Know Your Data

  • 06 - The quest begins - Variables
  • 07 - Variables and constants
  • 08 - Type safety and inference
  • 09 - Logging and commenting
  • 10 - Swift operators
  • 11 - Understanding strings
  • 12 - Working with strings
  • 13 - Type conversions
  • 14 - Booleans and logical operators
  • 15 - Introducing optionals
  • 16 - Accessing documentation
  • 17 - Challenge - Player stats
  • 18 - Solution - Player stats

3. Working with Collections

  • 19 - Gathering inventory with collections
  • 20 - Swift arrays
  • 21 - Core array methods
  • 22 - Swift dictionaries
  • 23 - Core dictionary methods
  • 24 - Working with sets
  • 25 - Core set methods
  • 26 - Swift tuples
  • 27 - Challenge - Merchant shop
  • 28 - Solution - Merchant shop

4. Application Control Flow

  • 29 - Controlling your destiny
  • 30 - The if statement
  • 31 - Unwrapping optionals
  • 32 - Using for-in loops
  • 33 - While loops
  • 34 - The switch statement
  • 35 - The guard statement
  • 36 - Challenge - Game logic
  • 37 - Solution - Game logic

5. The Wide World of Functions

  • 38 - Leveling the playing field
  • 39 - Basic functions
  • 40 - Overloading functions
  • 41 - Complex functions
  • 42 - Function types
  • 43 - Understanding closures
  • 44 - Using closures
  • 45 - Type aliasing
  • 46 - Challenge - Battlegrounds
  • 47 - Solution - Battlegrounds

6. Classes, Structs, and Beyond

  • 48 - Populating the game world
  • 49 - Value vs. reference types
  • 50 - Basic Swift classes
  • 51 - Access modifiers and properties
  • 52 - Subclassing in Swift
  • 53 - Basic Swift structs
  • 54 - Chaining optionals
  • 55 - Challenge - Inventory system
  • 56 - Solution - Inventory system

7. Leveling Up with Enums, Protocols, and Errors

  • 57 - Final stage, final boss
  • 58 - Swift enumerations
  • 59 - Raw and associated values
  • 60 - Introducing protocols
  • 61 - Using extensions
  • 62 - Throwing errors
  • 63 - Handling errors
  • 64 - Challenge - Battle actions
  • 65 - Solution - Battle actions

Conclusion

  • 66 - Next steps

Related courses

Related learn paths

About us

LyndaKade is a leading learning platform that helps people learn business, software, technology, and creative skills to achieve personal and professional goals.

Phone numberAparat ChannelTelegram SupportTelegram ChannelInstagram Page

All rights to this site belong to LyndaKade.

Terms of Service|Privacy Policy

نماد الکترونیک enamad در صورت اتصال با آی‌پی داخل کشور، نمایش داده خواهد شد.
logo-samandehi - لوگو ساماندهی
zarinpal
zibal