iOS Development
Last Updated: 24th February 2023
2 min read
Introduction
I love iOS development and over the years I've collected a handful of great learning resources.
If you are learning from scratch bear in mind to master iOS development you need to work your way through:
- Learning to program (core concepts like variables, functions, loops, etc)
- Learn the Swift language (syntax, types, etc)
- Then learn iOS development (SwiftUI, specific iOS APIs, etc)
Programming
Swift
Check out the SwiftUI resource page coming soon.
One important differentiation to make is that learning Swift and learning iOS development aren't quite the same thing. You use Swift in iOS development but the language can be used / worth understanding first before jumping into iOS development.
Swift.org
Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.
Swift.org
Learn Swift in Y Minutes
Swift is a programming language for iOS and macOS development created by Apple. Designed to coexist with Objective-C and to be more resilient against erroneous code, Swift was introduced in 2014 at Apple’s developer conference WWDC. It is built with the LLVM compiler included in Xcode 6+.
Learn X in Y Minutes
Learning
CS193P Spring 2021
Share your videos with friends, family, and the world
YouTube
objc.io
objc.io publishes books, videos, and articles on advanced techniques for iOS and macOS development.
objc.io
Point-Free
Point-Free is a video series exploring functional programming and Swift.
Point Free
The 100 Days of Swift
Follow the 100 Days of Swift and learn to build apps for free.
Hacking with Swift
The 100 Days of SwiftUI
Follow the 100 Days of SwiftUI and learn to build apps for free.
Hacking with Swift
Design + Code
Learn design and code by building real apps with React and Swift. Complete courses about UI design, web and iOS development using Figma, CSS, React Hooks and SwiftUI.
Design+Code
Swift by Sundell
Weekly Swift articles, podcasts and tips by John Sundell
Swift by Sundell
Resources
Apple Developer
There's never been a better time to develop for Apple platforms.
Apple Developer
iOS Dev Weekly - The best iOS development links, every Friday
Subscribe to a hand-picked round-up of the best iOS development links every week. Curated by Dave Verwer and published every Friday. Free.
iOS Dev Weekly
Xcode Releases
More than you ever wanted to know™
xcodereleases.com
Swift Package Index
The Swift Package Index is the place to find the best Swift packages. Indexing metadata from 6,035 packages packages.
The Swift Package Index
Xcodes.app
The easiest way to install and switch between multiple versions of Xcode - with a mouse click. - GitHub - XcodesOrg/XcodesApp: The easiest way to install and switch between multiple versions of Xc...
GitHub
GitHub - realm/SwiftLint: A tool to enforce Swift style and conventions.
A tool to enforce Swift style and conventions. Contribute to realm/SwiftLint development by creating an account on GitHub.
GitHub
GitHub - nicklockwood/SwiftFormat: A command-line tool and Xcode Extension for formatting Swift code
A command-line tool and Xcode Extension for formatting Swift code - GitHub - nicklockwood/SwiftFormat: A command-line tool and Xcode Extension for formatting Swift code
GitHub
GitHub - realm/jazzy: Soulful docs for Swift & Objective-C
Soulful docs for Swift & Objective-C. Contribute to realm/jazzy development by creating an account on GitHub.
GitHub
WWDCTracker
Numbers file that helps you track which dub dub sessions you've watch and would like to watch! 🚀 - GitHub - matthewspear/WWDCTracker: Numbers file that helps you track which dub dub sessions yo...
GitHub
Guides
Gosh Darn SwiftUI - Cheat Sheet
Everything you need to know to adopt SwiftUI
Gosh Darn SwiftUI
NSDateFormatter.com - Live Date Formatting Playground for Swift
An interactive playground and reference for formatting and parsing dates with DateFormatter using Swift or Objective-C.
NSDateFormatter.com
Xcode Build Settings
A convenient reference of available build settings for Xcode projects.
Xcode Build Settings
Your calendrical fallacy is thinking…
False. Many places around the world observe Daylight Saving Time, which means that people living in these locations will sometimes experience 23 hour days (when they “leap forward”) and 25 hour days (when they “leap back”).
Your calendrical fallacy is thinking…