SwiftUI - Declarative Interfaces for any Apple Device

Updated to include Swift 2.0 controls - Includes State, Binding, ObservableObject, MVVM, Web API, Core Data, Core ML

4.55 (2110 reviews)
Udemy
platform
English
language
Mobile Apps
category
instructor
11,433
students
26.5 hours
content
Dec 2023
last update
$99.99
regular price

What you will learn

Building iOS apps using SwiftUI framework

Implementing MVVM Design Pattern using SwiftUI

Consuming JSON Web API using SwiftUI

SwiftUI for iOS 14

Description

SwiftUI is an innovative, exceptionally simple way to build user interfaces across all Apple platforms with the power of Swift. Build user interfaces for any Apple device using just one set of tools and APIs. With a declarative Swift syntax that’s easy to read and natural to write, SwiftUI works seamlessly with new Xcode design tools to keep your code and design perfectly in sync. Automatic support for Dynamic Type, Dark Mode, localization, and accessibility means your first line of SwiftUI code is already the most powerful UI code you’ve ever written.


Requirements

  • Basic understanding iOS architecture

  • knowledge of Swift programming language

  • Mac

Check out list of topics covered in the course: 

  1. Creating and Combining Views

  2. Building List and Navigation

  3. Building Grid Layouts in SwiftUI 

  4. Understanding State and Binding

  5. Understanding MVVM Design Pattern

  6. Implementing Weather App Using Web API 

  7. Coffee Ordering App in SwiftUI 

  8. Mastering Xcode Previews

  9. Integrating SwiftUI with UIKit Apps

  10. Building Custom Views with SwiftUI 

  11. Implementing Gestures in SwiftUI 

  12. Property Wrappers in SwiftUI 

  13. Forms

  14. Modals

  15. Integrating Core Data with SwiftUI 

  16. Integrating Core ML with SwiftUI 

  17. SwiftUI Recipes

  18. SwiftUI for All Devices

  19. SwiftUI Animations

  20. Apple Stocks App Clone

  21. NearMe App Clone

  22. Neumorphic Design in SwiftUI 

  23. SwiftUI 2.0



Content

Introduction

Introduction
Prerequisites
What is SwiftUI?
Running SwiftUI on macOS Mojave with Xcode 11
Running SwiftUI on macOS Mojave with Xcode 11 Project
Xcode 11 Beta 4 Changes
Xcode 11 Beta 5 Changes

Creating and Combining Views

Hello SwiftUI
Customizing Text and Combining Views Using Stacks
Displaying Images

Building List and Navigation

Populating the List
Adding Images to the List
Adding Navigation
Implementing Details Screen
Adding Tap and Zooming Animation

Building Grid Layout in SwiftUI

What is a Grid?
Creating Grid with Row and Cells
Implementing Array Chunking Algorithm
Displaying Grid with Dynamic Data

Understanding State and Binding

What is State?
Implementing @State
Adding Items to List Maintained by State
Using State to Filter List
What is Binding?
Hello Binding
Understanding @Binding
Understanding ObservableObject
Another Example of Observable Object
Understanding @EnvironmentObject
FIX - EnvironmentObject and Preview Provider

Understanding MVVM Design Pattern

What are Design Patterns?
What is MVVM?
Why MVVM?
MVVM Architecture and Web APIs

Implementing Weather App Using Web API

What we will be building?
Registering with OpenWeatherMap Service
Implementing Webservice and Models
Implementing WeatherViewModel
Displaying Weather on the Screen

Coffee Ordering Application in SwiftUI

What you will be building?
Understanding the Server Side Code in Node Express JS
Implementing Models
Creating Webservice
Implementing OrderListViewModel and OrderViewModel
Displaying Orders on the Screen
Implementing Create Coffee Order Webservice Function
Implementing AddCoffeeOrderViewModel
Creating AddCoffeeOrderView
Placing Order
Adding Navigation from ContentView to AddCoffeeOrderView

Mastering Xcode Previews

Introduction to Xcode Previews
Implementing DishCell Preview
Dynamic Font Sizes in Xcode Previews
Dark Mode and Devices in Xcode Previews
Displaying List with DishCell
Xcode Previews for UIKit

Integrating SwiftUI with UIKit Apps

Displaying SwiftUI View In UIKit App
Passing Data to the SwiftUI View
Implementing the Image Loader Service
Building URLImage SwiftUI View
Organizing MovieDetailsView
Displaying UIKit Control in SwiftUI View

Building Custom Views with SwiftUI

Getting Started with Graphics in SwiftUI
Implementing a BarGraph View
Implementing the Report Model
Building Dynamic Graphs Using Report Models
Adding Basic Animation to Graphs

Implementing Gestures in SwiftUI

Adding the Tap Gesture
Adding the Drag Gesture
Adding Magnification Gesture
Adding Rotation Gesture

Property Wrappers in SwiftUI

Understanding Property Wrappers
Implementing @UpperCase Property Wrapper
Implementing @UrlEncode Property Wrapper

Forms

What are Forms?
Building Form for Night Shift Settings
Building Form for Notifications Settings

Modals

Displaying a Modal
Displaying and Passing Data to Modal from List View
Passing Data from Modal to the Parent View
Implementing FlagViewModel

Integrating Core Data with SwiftUI

What we will be building?
Setting Up Core Data
Implementing CoreDataManager
Saving to Persistent Storage Using Core Data
Fetching All Orders
Displaying All Orders
Presenting Add Order
Deleting Order

Integrating Core ML with SwiftUI

What we will be building?
Building the User Interface
Implementing the View Model
Implementing ImageDetectionManager
Displaying Results on the UI

SwiftUI Recipes

How to Integrate Camera with SwiftUI App?
How to Group Data in SwiftUI List
How to Search in a List Using UISearchBar?
Persisting Data to UserDefaults in SwiftUI
Downloading Images in SwiftUI

SwiftUI for All Devices

What you will be building in this section?
Setting Up the Project Structure
Implementing the Core Library
Implementing Views for iOS
Implementing Views for watchOS
Implementing Shared Views
Implementing Views for macOS

SwiftUI Animations

Implementing a Basic Animation
Creating Spring Animations
Challenge: Notification View Spring Animation
Solution: Notification View Spring Animation
Combining Animations

Apple Stocks App - Listing Stocks on the Screen

What we will be building?
Tour of the Stocks Web API
Implementing the Webservice and Stocks Model
Implementing StockListViewModel and StockViewModel
Fetching Stocks and Populating View Models
Setting Up User Interface in SwiftUI
Displaying Stocks in a List View
Filtering Stocks

Apple Stocks App - News Listing Screen

Implementing Webservice to Fetch News and Creating Models
Creating View Models for News
Displaying News on the View
Downloading Images Using URLImage Package
Implementing Drag Gesture on News View

Conclusion

Next Steps
Bonus

Screenshots

SwiftUI - Declarative Interfaces for any Apple Device - Screenshot_01SwiftUI - Declarative Interfaces for any Apple Device - Screenshot_02SwiftUI - Declarative Interfaces for any Apple Device - Screenshot_03SwiftUI - Declarative Interfaces for any Apple Device - Screenshot_04

Reviews

Stéphane
October 25, 2023
Ce cours est très clair et très complet, j'étais un peu perdu dans ma compréhension de SwiftUI et j'y vois déjà plus clair... J'ai hâte de découvrir la suite. Très bon rapport qualité/prix je trouve.
Dieter
September 16, 2023
Ich finde es schade das meine Anfrage zu den Materialien zum Kurs nicht beantwortet ist. Ich hätte eine Reaktion erwartet. Schade.
Ivan
August 25, 2023
Advantage: Good course, excellent and detailed explanation Disadvantage: A lot of outdated data and examples, which should definitely be removed.
Mariana
December 2, 2022
I love all Mohammad courses.. he explain very well and make clear difficult concepts .. Thank you Mohammad for all that you do for the community.
João
November 9, 2022
Really nice course, I love this course at all and the explanation! And also fits perfectly fine to me because I already work with Swift and I can understand 100% the audio, nice Mohammad's speaking skills!
Werner
October 14, 2022
Still early into the course, but I like the presentation. This is not the first course I took on SwiftUI, but I already learned some new stuff. My only critique would be that the beginning of the course is rather old now. As the course is not aimed at complete beginners this should not normally be an issue.
Wei-Ting
October 13, 2022
The curriculum is well organized and up-to-date. The given examples are also straight forward to follow. Very well made materials.
Jiexishede
August 30, 2022
I look you update your rxSwift course. Then I buy this course. I give five star,Because you update your course. I hope you will remove the old content (because old content become error) and update new content every two year. If two year is too short to update course. How about every three year? 我看你更新你的 rxSwift 课程。然后我买了这门课。我给五颗星,因为你更新了你的课程。我希望您将旧内容删除(因为旧内容成为错误)并每两年更新一次新内容。如果两年时间太短,无法更新课程。每三年怎么样?
Carleton
June 17, 2022
This is a very good course for me, as an experienced Swift engineer who is new to SwiftUI. The only reason I didn't give it five stars was that there were a few occasions when I thought that he could have provided more detailed explanations. I was very glad I chose this course!
Eric
May 21, 2022
Course is advertised as intermediate but still I would say is a beginner level. Just because Swift coding basic coverage is not there doesn't mean the course is intermediate. The apps he's building are not challenging at all. Also I find his small examples really boring. "John", "Card", "Hello", etc. I mean, c'mon. Be creative with your examples. InvisibleCard, MyAwesomeCousin, or something interesting. I am past deadline to get a refund so I can't get my money back but I wouldn't take this course again.
Mike
April 22, 2022
good start explaining the xcode versions. I am starting the course already at Xcode 13 in my development machine, but my main project started with Xcode 11. So I have a blend of App Delegate oriented MainStoryBoard code as well as new SwiftUI code working together.
Dulce
November 18, 2021
Great course! I've learn a lot and other things that are very useful for swiftUI learning. No regrets!
E.
August 24, 2021
The tutor is very well versed and resourceful both in advanced programming concepts and SwiftUI know-how.
Dumont
August 11, 2021
Mohammad, what can I say? This is the best course I have ever seen! Either you get training on basic functionality (which is good for the beginning), or you get training for SuperUsers and... I don't understand anything! Here, we have practical examples, tips and tricks, we see the projects from A to Z with a structuring of the application we develop. I loved it and I can only recommend this course to people who want to develop good applications with the right foundations! Even if I develop for macOS, I can apply this knowledge to this platform. Thanks again and congratulations.
Sanjay
September 22, 2020
Yes, I am fully satisfied with your content, The way of handling data flow in application, MVVM Architecture etc everything is optimised. A very warm thanks to you Azam. Thanks a lot. ??

Coupons

DateDiscountStatus
6/11/201995% OFF
expired

Charts

Price

SwiftUI - Declarative Interfaces for any Apple Device - Price chart

Rating

SwiftUI - Declarative Interfaces for any Apple Device - Ratings chart

Enrollment distribution

SwiftUI - Declarative Interfaces for any Apple Device - Distribution chart
2397326
udemy ID
6/3/2019
course created date
6/11/2019
course indexed date
Bot
course submited by