Originally published on Medium by Zafar Ivaev.
In this article, we will explore great iOS resources and books that will help you advance in your iOS development career.
I have personally used these resources and found them helpful.
Let’s first consider free resources and then paid ones.
Free
1. Intro to App Development with Swift — This official book by Apple is a great way to start in iOS development.
2. App Development with Swift — This one is a continuation of Intro to App Development with Swift. I found it very detailed and especially liked the MVC part where it explains how to offload view controllers and avoid making them massive:
3. Raywenderlich articles — Created by professionals in their fields, these articles tackle many different and interesting topics, ranging from adapting Accessibility in your app to using Combine for handling events over time.
4. Official Swift book — I am a huge fan of this official Swift guide by Apple. If you want to ace your Swift interview questions, using this book as preparation will greatly help you.
5. Hacking With Swift articles — This website contains hundreds of high-quality articles. I often use this site when I want to learn something as quickly as possible.
6. Objective-C for Swift Developers — A great course for those who are already familiar with Swift and want to learn Objective-C fast. You will explore the language’s syntax, differences between Swift and Objective-C, and also migrate the full project from Objective-C to Swift, which is another way to build up your portfolio.
7. Data Structures & Algorithms in Swift — Have a look at this course if you want to learn common data structures and algorithms in Swift and prepare for a tech interview.
Paid
1. iOS 13 & Swift 5 — The Complete iOS App Development Bootcamp — I consider this course the most helpful for anyone who wants to start learning iOS development. By the time you finish this course, you will have learned how to create user interfaces using Interface Builder and Autolayout, mastered Swift basics, integrated third-party libraries into your projects, explored MVC, networking, and working with JSON, and many other concepts. As a bonus, this course has additional videos on app design and app marketing. If you prefer video content over books, definitely consider this course.
2. iOS Apprentice by Raywenderlich — This was my very first book when I was starting out in iOS development. It is engaging and well-written. You will develop several nice projects from scratch, which is a good way to start building your portfolio. You can download a sample PDF and EPUB for free.
3. Advanced Swift — This is a great in-depth guide to Swift. If you are eager to learn more and explore many not so well-known concepts and practices, consider checking it out.
4. iOS Interview Guide — You will find this book very helpful when preparing for an upcoming iOS interview. It covers common questions and answers related to iOS development. It has about 200 pages, so you could easily finish it in a week.
5. Design Patterns by Tutorials — This contains tutorials on a lot of common, intermediate, and advanced design patterns. Knowing what a Facade, MVC, MVVM, and other patterns are will help you architect your apps in a more efficient way. It is also a great choice if you want to strengthen your portfolio and showcase your knowledge to a prospective employer.
6. Realm: Building Modern Swift Apps with Realm Database — Knowing how to persist data between launches of your app is important. Realm, a third-party framework, helps you with that. The framework is ridiculously easy to use and has great documentation on its official website. At the end of the book, you will learn how to build a real-time chat based on the Realm Cloud platform.
7. Concurrency by Tutorials — Knowing how to optimize the performance of your app is crucial unless you want to see many unhappy reviews on the App Store or get rejected during the app submission process. Learn how to improve the user experience and avoid common pitfalls by using this book.
8. RxSwift: Reactive Programming with Swift — RxSwift is a third-party open-source framework built on top of the Observable
pattern that allows you to react to and process events over time. During WWDC 2019, Apple announced Combine, a native alternative that allows developers to build reactive apps in a completely new way. However, Combine is supported only on devices running iOS 13 and beyond, so you may consider learning RxSwift first and then trying out Combine.
Wrapping Up
Like the article? Subscribe to be notified when a new article gets published:
Thanks for reading!