Programming in Swift

Learn about Apple’s open source programming language, Swift, through hands-on examples! If you’ve watched Programming in Swift: Fundamentals, you can skip the following episodes in this course: Part 1 - All Episodes Part 2 - Episodes 1-5 Part 3 - Episodes 1-3, and 5-9 Part 4 - Episodes 1-6 By Catie Catterwaul & Jessy Catterwaul.

Leave a rating/review
Save for later
Comments
Share

Who is this for?

Beginners! If you’ve never created a playground before, or if you aren’t sure what while loops or break statements are, this is the course to get you started. With easy-to-understand lessons and hands-on practice, soon you’ll be writing your own methods and implementing structures and classes with ease.

Note: If you’ve watched Programming in Swift: Fundamentals, you can skip the following episodes in this course:

  • Part 1 - All Episodes
  • Part 2 - Episodes 1-5
  • Part 3 - Episodes 1-3, and 5-9
  • Part 4 - Episodes 1-6

In this course, you’ll start at the very beginning, creating your first playground and learning about comments, tuples, booleans, and operators. Then, you’ll learn to control the flow of your code. For loops, switch statements, enums, oh my! You’ll build on the basics by implementing functionals and optionals through fun, hands-on challenges. You’ll employ collections, like arrays, sets, and dictionaries, to store and organize data. You’ll dive into structures, properties, and methods - come on in, the water’s fine!

Finally, you’ll dive into classes and protocols, and discover how powerful they can be.

This course isn’t suited for intermediate or advanced developers. If that’s you, check out our intermediate or advanced video courses for more ways to level-up your developer skills!

Covered concepts

This course is jam-packed with the fundamentals to give you a solid grounding for your Swift adventures. Here are some of the concepts you’ll conquer along the way:

  • Playgrounds
  • Comments
  • Tuples
  • Booleans
  • Operators
  • For loops
  • While loops
  • Switch statements
  • Enumerations
  • Functionals
  • Optionals
  • Collections
  • Arrays
  • Dictionaries
  • Structures
  • Properties
  • Methods
  • Classes/Subclasses
  • Protocols
  • Closures
  • Initializers
  • Memory management

Part 1: Core Concepts

01
Toggle description

Let's take a look at what you'll be learning in this part of the course, and why it's important.

Toggle description

Learn how to create your first Swift playground, and see how useful it can be to learn Swift, and use in day-to-day development.

Comments 5:38
Toggle description

Learn the various ways to add comments to your Swift code - a useful way to document your work or add notes for future reference.

Tuples 7:24
Toggle description

Learn the group related data together into a single unit, through the power of a Swift type called Tuples.

Toggle description

Practice using tuples on your own, through a series of hands-on challenges.

Toggle description

Learn how to use a Swift type called Booleans, which represent true or false values, and a bunch of new operators.

Toggle description

Practice using booleans on your own, through a series of hands-on challenges.

Scope 4:53
Toggle description

Take another look at the if statement, and learn what the concept of scope means in Swift.

Conclusion 1:54
Toggle description

Let's review where you are with your Swift core concepts, and discuss what's next.

Part 2: Control Flow

Toggle description

Let's review what you'll be learning in this part of the course, and why control flow is important.

Toggle description

Learn how to make Swift repeat your code multiple times with while loops, repeat while loops, and break statements.

Toggle description

Practice using while loops on your own, through a hands-on challenge.

For Loops 10:30
Toggle description

Learn how to use for loops in Swift, along with ranges, continue, and labeled statements.

Toggle description

Practice using for loops on your own, through a hands-on challenge.

Toggle description

Learn how to use switch statements in Swift, including some of its more powerful features.

Toggle description

Practice using switch statements on your own, through a hands-on challenge.

Toggle description

Learn about Enums, a powerful tool in Swift that can help with your switch statements and so much more!

Conclusion 1:19
Toggle description

Let's review what you learned about control flow in this part, and discuss what's next.

Part 3: Functions & Optionals

Toggle description

Review what you'll be learning in this part of the course about functions and optionals.

Toggle description

Learn how to write your own functions in Swift, and see for yourself how Swift makes them easy to use.

Toggle description

Practice writing functions on your own, through a hands-on challenge.

Toggle description

Learn some more advanced features of functions, such as overloading, inout parameters, and functions as variables.

Toggle description

Learn about one of the most important aspects of Swift development - optionals - through a fun analogy.

Toggle description

Practice using optionals on your own, through a hands-on challenge.

Toggle description

Learn how to unwrap optionals, force unwrap optionals, use optional binding, and use the guard statement.

Toggle description

Practice unwrapping optionals on your own, through a hands-on challenge.

Conclusion 1:12
Toggle description

Let's review where you are with your Swift core concepts, and discuss what's next.

Part 4: Collections

Toggle description

Let's review what you'll be learning in this part of the course, and why it's important.

Arrays 11:10
Toggle description

Learn how to use arrays in Swift to store and manipulate an ordered list of values.

Toggle description

Practice using arrays on your own, through a hands-on challenge.

Toggle description

Learn how to use dictionaries in Swift to store an unordered collection of pairs.

Toggle description

Practice using dictionaries on your own, through a hands-on challenge.

Sets 6:05
Toggle description

Learn how to use Sets in Swift to store an unordered collection of unique values.

Closures 10:52
Toggle description

Learn how to create closures in Swift - which you can think of as a function without a name.

Toggle description

Learn how you can use closures to sort collections, filter collections, run calculations on elements within a collection, and more.

Toggle description

Practice using closures on your own, through a hands-on challenge.

Conclusion 1:20
Toggle description

Let's review what you learned about collections in this part of the course, and discuss what's next.

Part 5: Structures

Toggle description

Let's review what you'll be learning about structures in this part of the course, and why it's important.

Structures 13:56
Toggle description

Learn how to group data and functionality together in Swift, using a value type called structures.

Toggle description

Practice using structures on your own, through a hands-on challenge.

Properties 17:34
Toggle description

Learn how to add two types of properties to your types: stored properties, and computed properties.

Toggle description

Practice creating properties on your own, through a hands-on challenge.

Toggle description

Learn when it's best to use computed properties, and when it's best to use methods.

Methods 13:31
Toggle description

Take a deep dive into methods, including writing initializers, mutating methods, extensions, and more.

Toggle description

Practice writing methods on your own, through a hands-on challenge.

Conclusion 1:14
Toggle description

Let's review what you learned about structures in this part of the course, and discuss what's next.

Part 6: Classes

Toggle description

Let's review what you'll be learning about classes in this part of the course, and why it's important.

Toggle description

Learn about the differences between classes and structures in Swift, and when you should use which.

Toggle description

Practice working with classes and understanding when to use them vs. structures, through a hands-on challenge.

Inheritance 12:39
Toggle description

Learn how you can inherit functionality from another class in Swift.

Initializers 10:08
Toggle description

Learn how to create your own class initializers, including two-phase initialization, and required vs. convenience initializers.

Toggle description

Practice creating your own class initializers, through a hands-on challenge.

Toggle description

Learn five concepts to help you decide when you should subclass, and when you shouldn't.

Protocols 8:20
Toggle description

Learn how to make your types conform to protocols in Swift, which you can think of as a to-do list for your types.

Toggle description

Learn how Swift manages memory under the hood, how you can tell when an object is deinitialized, and how you can avoid a nasty memory leak in your apps.

Conclusion 1:52
Toggle description

Let's review where you're at with your Swift core concepts, and give you some advice about where to go next.