Apple’s move from Objective-C to Swift has been cheered for it’s simplicity and native runtime environment. Xcode makes it easy to build software with Swift for any Apple device.
In this post I’d like to focus on Swift books made for iOS development. Titles range from beginner concepts to more advanced topics but I’ve really tried to whittle down only the absolute best books for studying Swift development.
If you’re just getting into Swift for iOS development you may be overwhelmed by this list. So if I had to pick the absolute best Swift book for a beginner I would recommend Swift Programming: The Big Nerd Ranch Guide.
It comes with everything you need to get started along with quality practice demos and tutorials.
I can’t say this is the ultimate #1 Swift book because it may not be everyone’s favorite choice. But I think the author covers Swift in a way that helps beginners understand the concepts pragmatically for real world projects.
Now onto the list!
The newer O’Reilly books have been incredible and I’m always impressed with their level of quality. Learning Swift is an intro guide made for iOS and OS X development.
Programmers moving from Objective-C and Cocoa should have no problem picking up this language. It’s definitely unique but also learnable with enough time and patience.
I really like this title because of the length and freshness of content(it’s a very new publication). The current Swift 2.3 is wildly popular but many developers are quickly moving to Swift 3. This book will offer guidance and push you towards the right direction for learning.
Here’s another recent book with some excellent content for newbies. Swift Essentials by Dr. Alex Blewitt is currently in its 2nd edition.
The book goes into detail about all the fundamentals of Swift and how it operates. The newer updated content explains Swift 2+ with new features and new devices like the Apple Watch.
If you need to get started with Swift this can be an excellent beginner’s guide. I wish there were more complex exercises in the book, however it is an “essentials” title which means it’s geared towards absolute beginners. The writing style is easy to comprehend and it’ll get you up to speed with everything you need to know.
I’ve used a few of the Big Nerd Ranch Guides before with great success. The writing style is always easy to understand even with more complex topics.
This is why Swift Programming: The Big Nerd Ranch Guide is a title I’d recommend many times over. Content is very detailed but also extremely basic. You start with learning Xcode and the raw basics of Swift like variables, if/else logic, and functions.
You can have basically zero prior coding experience and still learn Swift with this book. The exercises are fantastic and I think the authors really cover Swift in the right way.
If you’re not sure where to start with Swift you honestly can’t go wrong with the Big Nerd Ranch Guide. It’ll set you on the right path to teaching you how to write Swift code properly.
Sams Teach Yourself is a great series for absolute beginners to pick up a new language. The books focus solely on a language to remove as much unnecessary clutter as possible.
Swift in 24 Hours is the Sams Teach Yourself title made for aspiring Swift programmers. This book will not cover iOS development in great detail. But it will teach you the absolute fundamentals of Swift as a language.
Xcode makes a big appearance in this book as the primary IDE for Swift development. The tutorials guide you through Xcode playgrounds teaching you how to understand the code you write. But the applications are not exactly related to iOS development.
So if you have no prior knowledge this book can get you moving fast with Swift as a programming language. But to really delve into iOS development you’ll need another title like iOS 9 App Development Essentials to combine with this one.
For a more intermediate-level book check out Swift 3 Functional Programming. This title is for programmers who already know the basics of Swift and want to learn more about the functional programming methodology.
Swift 3 is currently the newest version of Swift released alongside iOS 10. It’s expected to be an incredibly popular update to the language making it even easier for developers to build quality iOS applications.
This book covers more detailed topics like pattern matching and map functions like the flatMap filter. You’ll learn how to apply functional programming on top of object-oriented programming to write solid Swift code for every project.
You don’t need to be an expert to understand this book. But you will need to know the basics of Swift programming and have access to the Swift 3 dev environment.
Getting even more advanced we find the topic of protocol-oriented programming as it relates to Swift. This means extending and building on top of protocols like you would a class.
If you already understand the basics of OOP and Swift development then you might want to pick up Protocol Oriented Programming with Swift. This book doesn’t teach you the only way to write Swift code, but it does teach you the best way to build code extending protocols in Swift.
Protocols are generally unique to Swift and not as popular in other languages. You can find many blog posts discussing protocol-oriented programming and how it applies to Swift development.
You can build iOS apps just fine without learning these features. But if you ever want to get into advanced Swift development this book is a must have resource.
All the books previously listed in this post should help you fully master the Swift programming language. If you add free online tutorials into your study list you’ll eventually be building custom iOS apps from scratch.
But how do you optimize your code for better performance? This is where the book High Performance iOS Apps comes into play. The author Gaurav Vaish teaches you how to measure performance on your device and to optimize your code for CPU load.
You’ll also learn about detailed auditing to improve your app’s networking features, app lifecycle, and overall security. Improved speed isn’t the only variable to a high performing iOS app.
When you learn to use the right analytics tools you can study slowdowns and bottlenecks while the app is in use. This book is solely for iOS developers who have already built a few apps and need to learn how to improve their performance.
With the iOS 10 release O’Reilly is preparing developers with this incredible resource of code snippets and common solutions. The iOS 10 Swift Programming Cookbook specifically covers Swift as a language for iOS and the solutions you can use to solve common iOS development problems.
This is not a book for OS X or Apple Watch development. It only covers iOS solutions specifically made for Swift development on iOS 10 devices.
The recipes are listed in a problem/solution format where each section introduces a new conceptual problem. Then you learn how to solve this problem with real code.
Even beginners could learn a lot from this book, however a basic understanding of Swift is essential to use all the recipes properly.
Another option for code recipes is The Swift Developer’s Cookbook first published in mid-2015. This does cover Swift but isn’t made exclusively for iOS 10.
Code snippets are very easy to understand and they’re meant to solve very common real world problems. The chapters organize common themes together like protocols, types, and error handling.
You’ll find solutions for common problems and every solution is geared towards being the most optimized code for that problem. You’ll learn about technical specs and development along with documentation and indexing.
With this cookbook in hand you’ll get answers to all the most common Swift problems. It’s definitely a much friendlier book for beginners and I think it can provide value to any Swift developer at any level of experience.
Lastly I want to cover one of the more unique specialized Swift programming books. This was written by Stephen Haney, an SF Bay area Swift developer with years of experience building mobile games.
Game Development with Swift teaches you how to build iOS games without any prior gaming experience. You don’t need to know anything about mobile development or the App Store submission process. Stephen teaches you everything about the submission process, iOS game techniques, and SpriteKit + how it applies to modern Swift programming.
You start with the basics of animation and creating sprites on the screen. Then you’ll delve into Apple’s physics framework and by the end of the book you’ll have created a working iOS game from scratch.
Not everyone wants to build games for iOS. But many people do, and the specificity of game development can be too much for some people to handle. That’s why I recommend Stephen’s book because it’s easy to read and you only need some prior Swift experience to get started.
These are my picks for the ten best books in the world of Swift development. And I have a feeling these books will help many readers interested in learning Swift for iOS.
To get started with the basics I would always recommend the Swift Nerd Ranch Guide or even Swift Essentials. Both titles are very friendly to beginners and they’ll teach you the fundamentals of Swift as a language, regardless of how you use it.
But if you want to get into deep iOS development you’ll want to take your knowledge further. All the other intermediate-to-advanced books in this list will give you a leg up on the industry. And if you need a reference guide consider the iOS 10 cookbook. I think it’ll prove invaluable in the coming years as Swift 3 gains popularity.