
Access the full course source code on GitHub, download a zip, and start fresh with a new playground in Xcode to follow along as we learn Swift, starting with functions.
Understand escaping closures, which outlive their function and require self for asynchronous work, and recognize that non escaping closures are safer and faster, preventing retain cycles.
Learn how auto closures in Swift act as syntactic sugar that wraps a closure for lazy evaluation and easier calls, passing expressions and messages in debug mode.
Explore how Swift enums group related values, enable exhaustive switch handling, and support associated values and raw values through practical examples like compass points, planets, and barcodes.
Explore how enums power practical Swift code, from representing errors and guard clauses to state machines and network status, including associated values and equitable conformance.
Explore stored versus computed properties in Swift, including lazy, property observers, and get/set, with examples like a rectangle center, a volume property, and static properties.
Learn how Swift uses computed properties versus methods to expose state and perform calculations, and why properties model state while methods handle processing.
Explore the differences between structures and classes in Swift, learn when to use each, and understand functional programming, heaps, and stacks for practical Swift programming.
Explore functional programming in Swift, emphasizing pure functions, immutability, and higher-order functions, and learn how these ideas influence choosing between struct and class.
Level up in Swift explores non recoverable errors and how to handle them with assert, assert failure, precondition, and fatal error, highlighting their behavior in debug versus release builds.
Level up in Swift's error arcade teaches you to create and throw errors and call throwing functions with try, try? and try!, comparing recoverable errors with programmer errors.
Want to learn Swift? Tired of watching random YouTube videos?
This course is for you.
Get up to speed fast
This course distills all the fundamental basics of Swift into a series of short, powerful videos that cut out the cruft, and get you up to speed fast.
Learn on the go
All the core Swift fundamentals have been condensed, distilled, and package into easily understood chunks. No video is on average longer than ten minutes. This will enable you to learn any time, any where, and then pick up next time exactly where you left off.
Have fun
By following topic with what I call a Swift Arcade, you won't be passively sitting by. You will be fully engaged applying what you are learning with fun interactive challenges designed to solidify the learning, while building muscle memory and having fun along the way.
This course was designed to save you the time and get you up to speed on the Swift programming language quickly. Join me. I will be there with you every step of the way. And if you have a question simply ask. I offer great support and am here to help all my students.
Learn Swift today. I hope to see you in there.
What you'll learn
Functions
Optionals
Closures
Tuples
Enums
Properties
Structures & Classes
Functional programming
Stack vs Heap
Extensions & Protocols
Protocol Delegate Pattern
Inheritance
Protocol Oriented Programming
Error handling
JSON
Result types
Retain cycles
Generics
Collections
Access Control
And more!
So what are you waiting for? Start your journey and Level Up in Swift today!
Testimonials
One of the most underrated courses on swift. Great way to refresh your Swift knowledge if you have already been programming in Swift. Captures the practical way of writing programs in swift and is concise. I have been programming on Swift from the time it was released and wanted something I could use as a guide. I actually came across the authors video on youtube , liked his teaching style and way he presents the content. Please keep making these videos on Udemy and also YouTube. This should be one of the top rated courses for swift.
Personally this course was exactly what I was looking for. It assumes some programming knowledge but is a really thorough yet concise language description. Jonathan has a great natural delivery style and is and the material is excellent. The concentration on practice and doing is particularly welcome.
I like the way Jonathan teaches, then gives practice examples for you to code on your own so you can properly apply each concept you've learned. This is the second class I've taken by him and I must say, it is much easier learning swift from an iOS Engineer.
Jonathan is very organized, has great didactics and his course was really fun! His Github repository for this course is excellent, with all the code and complete annotations, providing a great resource to study and review the topics. Many thanks for sharing your expertise with us Jonathan!
This is the best Swift course I've taken. Understanding getters and setters totally clicked for me here as well as when and how to use enums effectively as types, pattern matching, so much more. The instructor is engaging and motivating. Can't imagine how awesome it must've been for other dev's to work on the same team as the Instructor, truly! Thank you for the exceptional course!