Directory of iOS books
Awesome | Books | Last updated |
---|---|---|
97 | Apr 3, 2023 |
- Simply press command + F to search for a keyword
- Go through our Content Menu
- iOS
- Objective-C
- Swift
- Functional Swift
- UI
- SwiftUI
- Combine
- Architecture
- Multithreading
- Data Structures and Algorithms
- Database
- ARKit
- Machine Learning
- Metal
- Catalyst
- Game Development
- Reverse Engineering
- Network
- Testing
- watchOS
- tvOS
- macOS
- Server Side Swift
- Interview
- 🇷🇺 Russian books
- iOS 14 Programming for Beginners: by by Ahmad Sahar
- Beginning iPhone Development with Swift 5 by Wallace Wang
- Beginning iOS 13 Programming with Swift by Simon Ng
- iOS Apprentice by Matthijs Hollemans, Fahim Farook
- iOS 12 Programming Fundamentals with Swift by Matt Neuburg
- iOS 13 Programming Fundamentals with Swift by Matt Neuburg
- Intermediate iOS 12 Programming with Swift by Simon Ng
- Programming iOS 13 by Matt Neuburg
- Pro iPhone Development with Swift 5 by Wallace Wang
- Obscure Topics in Objective-C, Swift, and Cocoa by NSHipster
- Push Notifications by Tutorials by Scott Grosch, Marin Bencevic, Shai Mishali
- iOS App Distribution & Best Practices by Keegan Rush, Pietro Rea
- Anyone Can Create an App by Wendy L. Wise
- iOS Development with Swift by Craig Grummitt
- Obscure Topics in Cocoa & Objective-C by NSHipster
- Objective-C for Absolute Beginners by Gary Bennett, Mitchell Fisher, Brad Lees
- Objective-C for Swift Developers by Paul Hudson
- Programming in Objective-C by Stephen G. Kochan
- The Swift Programming Language by Apple
- Swift Programming: The Big Nerd Ranch Guide by Mikey Ward
- Swift Cookbook by Keith Moon, Chris Barker
- Swift Apprentice by Ehab Amer, Alexis Gallagher, Matt Galloway, Eli Ganim, Ben Morrow, Cosmin Pupaza, Steven Van Impe
- Advanced Swift by Chris Eidhof, Ole Begemann, and Airspeed Velocity
- Pro Swift by Paul Hudson
- Swift Protocol-Oriented Programming by Jon Hoffman
- Mastering Swift 5 by Jon Hoffman
- Optimizing Collections by Károly Lőrentey
- Hands-On Swift 5 Microservices Development by Ralph Kuepper
- Guide to Swift Strings by Flight School (Matt)
- Compiling Swift Generics by Slava Pestov
- Hello Swift! by Tanmay Bakshi, Lynn Beighley
- Swift in Depth by Tjeerd in 't Veen
- Classic Computer Science Problems in Swift by David Kopec
- RxSwift: Reactive Programming with Swift by Florent Pillet, Junior Bontognali, Scott Gardner, Ash Furrow, Marin Todorov, Shai Mishali
- Functional Swift by Chris Eidhof, Florian Kugler, Wouter Swierstra
- Auto Layout by Tutorials by Libranner Santos, Jayven Nhan
- Modern Auto Layout by Keith Harrison
- iOS Animations by Tutorials by Marin Todorov
- Thinking in SwiftUI by Chris Eidhof, Florian Kugler
- SwiftUI by Tutorials by Raywenderlich Tutorial Team
- SwiftUI by Example by Paul Hudson
- SwiftUI Views Quick Start (FREE) by Mark Moeykens
- SwiftUI Views Mastery by Mark Moeykens
- SwiftUI Animations Mastery by Mark Moeykens
- Working with Data in SwiftUI by Mark Moeykens
- Using Combine By Joseph Heck
- Combine: Asynchronous Programming with Swift by Raywenderlich Tutorial Team
- Combine Mastery in SwiftUI By Mark Moeykens
- The Clean Swift Handbook by Raymond Law
- App Architecture by Chris Eidhof, Matt Gallagher, Florian Kugler
- Advanced iOS App Architecture by Rene Cacheaux, Josh Berlin
- Swift Design Patterns by Paul Hudson
- Design Patterns by Tutorials by Joshua Greene, Jay Strawn
- Hands-On Design Patterns with Swift by Giordano Scalzo, Florent Vilmart, Sergio De Simone
- Cocoa Design Patterns by Erik Buck
- Data Structures and Algorithms by Kelvin Lau, Vincent Ngo
- Swift Algorithms & Data Structures by Wayne Bishop
- Classic Computer Science Problems in Swift by David Kopec
- Practical Core Data: A modern guide to the Core Data framework by Donny Wals
- Core Data by Tutorials by Aaron Douglas, Saul Mora, Matthew Morey, Pietro Rea
- Core Data by Florian Kugler, Daniel Eggert
- Realm: Building Modern Swift Apps with Realm Database by Marin Todorov
- Build iOS Database Apps with Swift and SQLite by Kevin Languedoc
- Core Data for iOS by Tim Isted, Tom Harrington
- Core Data Mastery in SwiftUI by Mark Moeykens
- Apple Augmented Reality by Tutorials by Chris Language
- Beginning ARKit for iPhone and iPad by Wallace Wang
- ARKit by Tutorials by Chris Language, Namrata Bandekar, Antonio Bello, Tammy Coron
- Practical AI with Swift by Mars Geldard, Jonathon Manning, Paris Buttfield-Addison, Tim Nugent
- Deep Learning with Swift for TensorFlow by Rahul Bhalley
- Machine Learning by Tutorials by Matthijs Hollemans, Audrey Tam, Chris LaPollo
- Dive Into SpriteKit by Paul Hudson
- 3D Apple Games by Tutorials by Chris Language
- 2D Apple Games by Tutorials by Caroline Begbie, Mike Berg, Michael Briscoe, Ali Hafizji, Marin Todorov, Ray Wenderlich
- iOS Test-Driven Development by Tutorials by Joshua Greene, Mike Katz
- Test-Driven iOS Development with Swift 4 by Dr. Dominik Hauser
- Testing Swift by Paul Hudson
- tvOS Apprentice by Christine Abernathy, Jawwad Ahmad, Chris Belanger, Eric Cerney, Josh Greene, Michael Katz, Kelvin Lau, Adrian Strahan
- Developing for Apple TV using tvOS and Swift by Gary Bennett, Brad Lees, Stefan Kaczmarek
- Practical Server Side Swift by Tibor Bödecs
- Server-Side Swift (Vapor Edition) by Paul Hudson
- Server-Side Swift (Kitura Edition) by Paul Hudson
- Server Side Swift with Vapor by Tim Condon, Tanner Nelson, Jonas Schwartz, Logan Wright
- Server Side Swift with Kitura by David Okun, Chris Bailey
- Разработка приложений на Swift 5.1 и SwiftUI с нуля - Александр Казанский
- Язык Swift. Самоучитель - Айк Харазян
- Swift подробно - Инт Чейрд
- Swift. Основы разработки приложений под iOS, iPadOS и macOS - Усов Василий
- Нативная разработка мобильных приложений. Перекрестный справочник для iOS и Android - Льюис Шон, Данн Майк
- See the guide
- Distributed under the MIT license. See LICENSE for more information.
Day −∞ to 0: Stick to a programming language like C or C++. Make sure that you are comfortable with pointers/objects.
Day 1: Understand the concept of Algorithmic complexity. Skip the theory for now, but for every piece of code you write, you should be able to derive both time and space complexity.
Day 2 - 10: Let’s start with some simple data structures,
Arrays Linked Lists Strings Stacks Queues Understand their basic operations (insert, delete, search, traversal) and their complexity - Big-O Algorithm Complexity Cheat Sheet, and code them all.
Day 11 - 25: Let’s now learn some simple algorithms,
Sorting - Insertion sort, Merge sort, Quick sort, Heap sort, Bucket sort, Counting sort, Radix sort, External sorting Search - Linear search, Binary Search (along with its variants). Prime Numbers - Sieve of Eratosthenes, Primality test Strings - String searching, LCS, Palindrome detection Miscellaneous - Euclidean algorithm, Matrix multiplication, Fibonacci Numbers, Pascal's Triangle, Max Subarray problem Day 26 - 50: Once you are comfortable with everything above, start doing problems from,
Cracking the Coding Interview Elements of Programming Interviews Programming Interviews Exposed: Secrets to Landing Your Next Job GeeksforGeeks HackerRank InterviewBit Stick to chapters of arrays, linked lists, strings, stacks, queues and complexity.
Day 51 - 60: Let’s learn some non-linear data structures,
Tree Binary Tree, Binary Search Tree - Tree traversals, Lowest common ancestor, Depth, Height & Diameter, Finding k-th smallest element Heaps Hash table - 4 sum problem, Checking if sudoku solution is valid Graph - Breadth-first search, Depth-first search, Topological sorting, Minimum spanning tree, Shortest path problem, Day 61- 90: Refer to the previous resources and start doing problems from trees, hash tables, heaps and graphs.
Day 91 - 100: Understand Computational complexity theory and NP-completeness, Knapsack problem, Travelling salesman problem, SAT problem and so on.
Day 101 - ∞ : You are now better than most of the CS undergrads. Keep revising the above topics and start competitive programming! Good luck!