Create an excellent example of a typical take-home project for iOS developer interviews. You will learn the basics needed to get your first iOS developer job. Once you have an understanding of the concepts outlined in this course, you are ready to start applying for jobs.
Will this course be useful to me if I am not looking for a job?
Absolutely. This course covers a wide range of fundamental topics for iOS developers. I feel that one of the biggest benefits of this course is that the entire project is linked, rather than one-off lessons. Not to mention, you'll leave this course with a nice snippet of code for future reference.
What skill level is required for this course?
This course is not for absolute beginners. I won't go into details about what Optional is, how loops work, or explain an array. That being said, it's not super advanced. It's aimed at people who are going for junior iOS developer positions. If you are good with the basics, this course should be very helpful.
Why aren't you using storyboards?
When you are still learning, you will have a better understanding of what is happening with your layouts when you learn how to make them programmatically. The goal of this course is to make you better. There is a difference between getting something to appear on the screen and knowing what is actually happening.
Why in UIKit and not SwiftUI?
The goal of this course is to help those who are currently trying to get their first job, or about to take the leap. SwiftUI is fun and new, but 99.9% of iOS jobs in UIKit. SwiftUI will take another couple of years to become relevant in the job market.
Which version of Xcode do I need?
To test this course for the future, I set a minimum target on iOS 13. This requires Xcode 11. I did this because there are some specific features in iOS 13 that I wanted to include, such as Dark Mode and DiffableDataSource.