Mobile Apps


NEW: SwiftUI Series - SwiftUI Fundamentals

Build a strong SwiftUI Fundamentals to jump start your Swift development career (SwiftUI 2, iOS 14, Xcode 12)

4.85 (20 reviews)


7 hours


Dec 2020

Last Update
Regular Price

Unlimited access to 30 000 Premium SkillShare courses

What you will learn

Developing iOS application using SwiftUI


Do you want to learn about SwiftUI, but not sure where to start? Or maybe you start feeling overwhelmed reading SwiftUI articles and not sure how to build a complete Swift UI project?

This course will take you through some fundamentals of SwiftUI development and will help you navigate in building SwiftUI projects. It will also teach you some best practices to build SwiftUI projects.

Some of the topics that will be covered:

  • Creating SwiftUI project from the ground up to a finish product.

  • Understanding SwiftUI state, such as State, Binding, Observed/Observable Object, Environment/EnvironmentObject.

  • Understanding Application Lifecycle.

  • Handling API invocation and its response.

  • Incorporating different type of SwiftUI views as a building blocks to create complex views in our projects.

  • Customizing View Modifier and View Builder

  • and many more ...

If you are coming from Swift UIKit background, the other thing that you may find challenging is how to compose my UI since there is no Storyboard or XIB files within SwiftUI project. We will cover this aspect as well.

You will learn some technique across projects that we are going to build on how to compose a polish UI presentation for your users. Each project will present different challenges and is intended to teach you many different aspects of SwiftUI development and components. You will learn new things across all project. All these techniques would be something that you can apply immediately to your own projects.

*** Course Coverage ***

  • SwiftUI 2

  • iOS 14

  • Xcode 12


NEW: SwiftUI Series - SwiftUI Fundamentals
NEW: SwiftUI Series - SwiftUI Fundamentals
NEW: SwiftUI Series - SwiftUI Fundamentals
NEW: SwiftUI Series - SwiftUI Fundamentals



Course Overview and Housekeeping Stuff

Layout Concept, State and Binding

Layout Concept

SF Symbols

Picker View

SwiftUI State and Binding

Project: Reminder App

Project Setup and Mock Data

List: Static and Dynamic Cell

MVVM and Local Storage

Toggle Show/Hide Reminder

Delete and Move Reminder Cell

Wrap Up and Challenge

Geometry Reader

Flexible Space

Coordinate Space

Project: Weather App

Getting API Key for Weather App

Project Setup and API Test


Search Bar and Search View

Custom CityCell with Binding

Weather View

Handling Forecast API

Finalize Forecast View

CHALLENGE: Weather - Temperature Imperial vs Metric


Application Life Cycle

ScenePhase and AppDelegate

Custom ViewModifier and ViewBuilder

Custom ViewModifier

Custom ViewBuilder - 1

Custom ViewBuilder - 2

Lazy Grid

Vertical Grid and Layout

Horizontal Grid and Layout

Project: Disney+ Layout and Navigation

TabView Navigation


HomeView Navigation and Layout

Movie Carousel View

Button Group View

Movie List Group

Movie Detail View

Fade Effect Animation

CHALLENGE: Movie Detail View

What's Next

SwiftUI Reference


Mauricio13 May 2020

I'd recommend splitting the playgrounds before they get too crowded. When you went back and forth scrolling, it added an extra mental load in order to keep track of everything you were up to that point. I think using tabs instead would be more useful.

syo23 November 2019

he use playgraound for showing his code but in playground there a lot of code. it looks messy because of being still code used previously in other lecture.

Vishnu12 September 2019

Explained this thing work like this but not more explanation why it work like this and why it is not work like this

DUBIEN21 August 2019

Peu d’informations pour ce sujet, et même de littérature. C’était donc un bon choix. Mais il serait bon de ne pas trop conserver les mêmes exemples qui font qu’une leçon est parfois trop dense, par exemple avec la leçon sur le protocole composition. Mais merci beaucoup.

Karl17 July 2019

Good, but basic, I had expectation of more advanced use of protocols. Some good learnings for me though. Also, some of the code typing could be edited out to make the course more effective.

Emdad8 March 2019

This course is also good as I have seen this author another course named MapKit which was very detailed and had enough practical example. But My expectation was more practical example related protocol & delegate. However, I appreciate this course though. Thanks! Emdad

Duncan1 March 2019

I suppose its giving context about structs and classes but a user should know this before looking at design patterns.

Luis16 November 2018

Con este curso pude comprender muchas funcionalidades del lenguaje y aprendí nuevas técnicas para hacer un código más ordenado y coherente.

Gábor5 October 2018

Really great course exposing Protocol-Orientated Programming. I really appreciate that he takes his time, explaining each step. Each new lesson builds onto the previous one, but he always does a recap before diving into the new lesson, so each lesson can stand on its own if needed. I will definitely be coming back to this course for reminders and go-to-tricks. A good purchase, all in all!

Barbara13 September 2018

I learned two great things from this course: 1. How adding an extension to a protocol that provides a default implementation is very powerful for adding functionality to a class or struct by just adopting the protocol and calling its methods. 2. Using the protocol as a type for a collection allows for polymorphism on the protocol methods. Also very powerful.

Christian20 August 2018

The course is great but It would be even better if the instructor could add some examples of use in real apps.

Anonymized30 May 2018

It's giving me the desired explanations related with parts of Swift language that I'm not that good yet.

Anonymized11 May 2018

Course gives very basic understanding about problem, I would like to see more real world examples in apps, rather than in Playground. You can find many places when author uses forced casting in code, which is not very good code example.

Chuck8 May 2018

This is a good course as far as it goes. However, I was hoping for more depth. I think this course could benefit from a sample project (or projects) that put the ideas into practice. The WWDC presentations on Protocol Oriented Development go into further depth and provide some very practical example. This course is better than those in that it goes more slowly and helps you absorb the concepts as you go. However, it stops before some of the more sophisticated uses of POP are brought into play in a meaningful way. I recommend it for someone new to Swift and POP, but would look elsewhere if you are seasoned and want deeper material.

Anonymized10 April 2018

The quality of the course is great is teaches the object oriented within various programming models. The pace of the course is great to teach within the IT and Global Market


Udemy ID


Course created date


Course Indexed date
Course Submitted by