Deep Dive iOS 17 Swift / SwiftUI Programming

Project-based approach to iOS 17 development using the MVVM design pattern in SwiftUI and the Swift Programming language

4.70 (183 reviews)
Udemy
platform
English
language
Mobile Apps
category
instructor
Deep Dive iOS 17 Swift / SwiftUI Programming
1,917
students
78.5 hours
content
Apr 2024
last update
$79.99
regular price

What you will learn

Learn to build an iOS 17 App

Learn good programming practices

Learn MVVM design pattern

Have fun programming and exploring

Why take this course?

This course focuses on iOS development dedicated to iOS programming using the Swift programming language and the SwiftUI framework. You will learn programming fundamentals of the Swift programming language. This is a project based course. In each project you will learn about more features of the language and gain more experience. The Apps will be written using the MVVM software design pattern which goes hand in hand with SwiftUI and iOS development. You will also learn how to efficiently use Xcode, navigate, use hotkeys and code snippets.


Here is a list of the topics we will cover and the Apps we will create.

  1. Basics. The goal is not to give an encyclopedic treatment, rather cover a large chunk of the fundamentals and then quickly dive into as many apps as possible where we use these basics and beyond.

    1. Programming basics, i.e. variables, constants, arrays, loops, structs, conditionals, basic data types, guard, tuples, enumerations, etc.

    2. HStack, VStack, ZStack, gradients, colors, text, alignment, frames, rotations, grids, images, AsyncImage

    3. Working with code Snippets in order to write programs more efficiently. This topic is rather simple but quite useful. We also cover useful topics in this sections such as

      • Page tabbed views

      • Background colors

      • Buttons

      • Gradient text and masks

      • Nice default views

      • Avatars

      • Clickable images which link to a website

  2. Greetings App. The goal is to explore some basics of SwiftUI. In this short App we learn about basic layouts, animations, tap gestures, gradients (linear and radial), support for multiple languages such as English, Spanish, etc, creating an App icon for all devices, support for light and dark mode.

  3. Swift Macros. We cover the new Swift Macros available as of iOS 17.

  4. Calculator. We implement a nice UI based on a beautiful design from dribbble. We support both light and dark mode and discuss state variables.

  5. Recipe App MVVM. This is the first App in the course that covers the MVVM design pattern which is central in this course. We also cover basic navigation and lists and custom views in this section.

  6. Fizz Buzz. This App is based on a standard interview question called Fizz Buzz. We learn about Xcode's playground and then we move on to an app that relies heavily on String manipulation. We write an App that implements Fizz Buzz in several programming languages such as Swift, Rust, Go, C, Javascript/HTML. So we write a program that writes programs. Moreover we learn how to copy text to the clipboard and we discover the context menu.

  7. HTML to Color Extension. In this section we write code that converts  HTML to usable code in SwiftUI. Namely we automate the creation of color extensions which will be used in the Charts App of our course (or in any app for that matter).

  8. Exploring Charts. We create charts using the SwiftUI Charts framework. Using drag gestures in the charts. Horizontal and vertical bar charts, line charts, area charts.

  9. Core Data Math Game. We create a math game focusing on MVVM and Core Data. In addition like most of the apps in the course, the app supports multiple languages out of the box via localization.

  10. Swift Data. We explore Swift Data as a new alternative to Core Data available as of iOS 17.

  11. Alarm App. This is one of the highlights of the course. We largely base the UI on a design from dribbble. We support multiple languages out of the box, namely English, Spanish, French, Italian, German, Turkish. The UI is highly complex so this is an excellent opportunity to work with nice UIs. We work with navigation stacks, tab views, grids, shapes, Date pickers, etc. We even create a custom toggle button using tap and drag gestures, states and bindings. Moreover we cover advanced topics such as async-await (introduced in iOS 15) and local push notifications. We also discuss Environment objects, Published, State and Binding. (These topics are covered in most of the Apps but in the alarm app this is used frequently.)

  12. Conway's Game of Life. This is a standard programming exercise introduced by the British mathematician John Conway (check out the Wiki) who sadly passed from Covid. We generalize this game in the sense that the user can change the rules of the game. Once again we focus both on actual programming logic and on a nice UI such as working with sliders, constructing custom check boxes, ForEach views, etc.

  13. Brevis App - Hotkeys. This is a relatively simple MVVM-based App that animates the background and rotates a custom card view.

  14. Tip Calculator. My first thought was - not another tip calculator! To make things interesting this App is based on a beautiful design from dribbble. We also work with Shapes in this section and there is a major focus on State and Bindings.

  15. Flashcards App. The name is self-explanatory. There is a major focus on tap, magnification and drag gestures in this App. As usual we follow the MVVM design pattern. We also create rotating cards (similar to what we have seen in the Brevis App).

  16. Mystic Puzzle Game. This is also referred to as the 15 puzzle game. In this game we shuffle 15 titles with one empty title and the user must move the tiles back into place. This project has highly not trivial logic and not just a nice UI.

  17. Quote of the Day App.  This uses a quote API, in other words we will learn how to grab data off the internet which is very important in many other apps. Amongst other things we use custom fonts in this section.

  18. Speed code a Chill Meditation App. We create a very simple meditation in 30 minutes flat. This is to show what can be done easily in SwiftUI with very little time and effort.

  19. Multilingual Animals. This can be viewed as an educational game for children. The main goal of this project is to learn how to support text to speech in multiple languages, namely, English, Spanish and French. Of course other languages can easily be supported.

  20. The remaining four apps focus on the frontend. All based on designs from dribbble. Namely.

    1. Body Shape UI.

    2. Meditation App UI.

    3. Finance App UI.

    4. Task Manager UI.



Moreover this course is dynamic in the sense that I will regularly post more material of my own and/or in response to specific requests from students.


I hope you enjoy this course as much as I enjoyed creating it. Also make the code your own. Experiment and be creative. Try to implement an App idea of your own.


Feel free to ask questions in the Q & A or message me directly. I'm always happy to answer questions and check for questions twice a day.


Happy programming and have a Great day


Ron


Screenshots

Deep Dive iOS 17 Swift / SwiftUI Programming - Screenshot_01Deep Dive iOS 17 Swift / SwiftUI Programming - Screenshot_02Deep Dive iOS 17 Swift / SwiftUI Programming - Screenshot_03Deep Dive iOS 17 Swift / SwiftUI Programming - Screenshot_04

Reviews

Alex
October 13, 2023
I'm still on the first app, but so far, the course is great. It may not be suitable for absolute beginners but if you have a basic understanding of iOS, this course is amazing. It doesn't stop in explaining basic things that you may know already but focus on the implementation of features. I'll keep updating my review as I progress through the course.
Aleksandr
October 6, 2023
Very repetitive and shallow explanation and missing important stuff. I don't know what was the reason to explain about Xcode the same things multiple time in different videos. I don't get why nils introduced without explaining what nil exactly is. So I see how to use it, but in fact I wasn't explained what does it mean. etc etc. I still have some hope to get some useful information, but as for now I can't recommend this course to somebody else, sorry.
Tonykane
October 1, 2023
You said modifier order is important but not why and at end flashing images on preview came from nowhere
Jason
July 20, 2023
This course at the time writing this review, seems to be the most up to date on the website. It’s always being updated and the author seems to quickly reply to questions. And there is so much content. Such good value for money. Definitely 5 stars. Very worth buying. Yet I have 2 criticisms, on quite a few occasions new concepts and code have been written in the apps without any explaination of what it does, even though i started from the beginning but this code wasn’t talked about before. But.. i have noticed that many more videos have been added recently which may explain some of this code. My only other little critic is that it seems that sometimes it’s the first time he has written some of the code because he gets a little stuck or mistypes the code to later correct. Which some people might find appealing. Anyway, still I think the before course on this app at the moment and I’ve bought several of them.
Abdul
July 1, 2023
I've continuously adjourned the rating, because the course is just so nice and interesting to pause for anything else. More importantly, the instructor's enthusiasm to make the course better is rare, I've not seen any other instructor with such dedication. He takes his time to get you going. The best SwiftUI course I've seen.
Kerem
June 16, 2023
Course is given on up-to-date content which is great. Ron also is a great teacher. However, if you're totally new to iOS programming and/or coding in general, the course requires you to Google LOTS of stuff. Research is of course a huge part of the learning process but sometimes we write code that we don't know the purpose or the "why?" aspect and it gets harder to wrap your head around as you get further in. I'll be following and see how it evolves. Thanks for the passion and effort you put into this, Ron.
King
June 5, 2023
Yes, this course is not Beginner-Friendly. There are some points for students to learn extra by Googling. However, I like the concept of making IOS app right away rather than starting from zero-base. it would be better, if there is a chapter explaining how swift works / or some key features in details If you have a passion and time to googling, this course might be suitable for you, since it deals with brand new Swift16 and i feel that the instructor puts a lot of effort in the course
F.M.
June 4, 2023
At first it was average, but now it is very good. The teacher is very responsive and care about his student. Video are also very good. I will do final review when I will have finished his lessons.
Dmitriy
May 31, 2023
The author of the course is actually very bad at explaining everything. The essence of this course is simply to repeat what the author does, but not to learn. He went through the entire Swift language in 1.5 hours. Then he began a complex, incomprehensible project with a text that explains almost nothing and only needs to be repeated. I do not recommend the course. This is more of a course for those who want to remember Swift.
William
March 21, 2023
The course is intended for those that aren't familiar with xcode, new, etc. With that being said the instructor shouldn't direct you buy saying "press this button, look here, etc" without either having a call out, some kind of mouse highlighter or saying " in the upper right you will see icon for options" or something like that. He is teaching as if you are sitting there with him and he can point at the screen.
Carlton
March 12, 2023
I love this class and I am getting exactly what I wanted and much, much more as a new beginner iOS Developer; I've only built Websites & E-Commerce stores in the past! I was debating between this class from Dr. Ron Erez and another highly rated class from Dr. Angela Yu (which I quickly found out is OLD & OUTDATED!!). This is the course to take in 2023 with NEW & UP-TO-DATE content!! I am from the USA with English being my only language, and I can clearly understand everything he is saying and doing. There is an option on the video player to slow down the speed of the video and I turned it down to "0.25" so I could follow along a little better without having to pause & rewind so much. Also, I watch the videos from my iPhone 13 Max Pro and use Xcode on my MacBook Pro to follow along; Having a phone to watch your videos from or a second computer will help so you don't have to go back and forth as seen in a previous comment!! I recently purchased this MacBook Pro from eBay that can run Ventura specifically to Learn & Become a iOS Developer as a career option. This is exactly I what I needed in 2023 to get started, will be doing the 100 days of swiftUI after this. Seeing that the instructor is very active and keeps up with his content is also a huge plus! For the price & Certificate at the end, Can't beat this deal with a baseball bat!! Thanks Dr. Ron Erez!!
Marc
March 6, 2023
The instructor works through the examples and modifications too fast. The core concepts related to what a view is, why it functions the way that it does, and the purpose of the order etc is not good. The applications are fun, but I'm not sure this is for absolute swift beginners. There is also a lot of jumping from code refactoring, and its extremely hard to follow due to the xcode view being completely zoomed
Tonio
January 26, 2023
Audio quality is poor. Being able to see the code without having to navigate the video would be very helpful.
Amit
January 24, 2023
The best IOS course in 2023, with all of the latest updated stuff. I recommend this course to all. Thanks
O
November 11, 2022
A successful course for MVVM and design, with a simple and beautiful explanation. No same code again. Similar things are done in different ways. Very successful.

Charts

Price

Deep Dive iOS 17 Swift / SwiftUI Programming - Price chart

Rating

Deep Dive iOS 17 Swift / SwiftUI Programming - Ratings chart

Enrollment distribution

Deep Dive iOS 17 Swift / SwiftUI Programming - Distribution chart
4344032
udemy ID
10/11/2021
course created date
9/18/2022
course indexed date
Bot
course submited by