Clone this wiki locally
CodePath iOS Guides
Welcome to the open-source CodePath iOS Guides! Our goal is to become the central crowdsourced resource for complete and up-to-date iOS content and tutorials. If you are a designer learning iOS you may want to start with the CodePath iOS Guides for Designers.
Ever been frustrated finding information on outdated one-off blog posts and tutorials that has since become irrelevant? How many times were you googling only to find your answer only on a 2 year old StackOverflow post? We believe there's got to be a better way. Why not have the community work together to create useful and detailed documentation for every aspect of iOS (or any platform)? There's absolutely no reason that we should have to make do with outdated, vague or un-editable content anymore.
Totally new to iOS? Start here.
- Setting Up Your Environment
- Starting a New Project
- Troubleshooting Common Issues (Needs Attention)
- Swift Fundamentals
- Managing Dependencies with CocoaPods
- Understanding an Xcode Project
- Understanding the Application Lifecycle (Needs Attention)
- Application Architecture and MVC in iOS
- Using Swift and Objective-C in the Same Project
- Understanding Navigation in iOS
- Debugging Apps
Networking and Models
Diving into the networking and model layers for data-driven apps:
- Network Programming Basics
- App Transport Security
- Showing a progress HUD (with Long-Running Tasks)
- Troubleshooting API Calls
Working with View Controllers
- Passing Data and Propagating Events
- Handling Form Input in Tables
- Navigation Controllers
- Tab Bar Controllers
- Container View Controllers
- Search Bar and Search Controllers
- View Controller Transitions
- View Controller Lifecycle
View Programming and UIKit components
- Table Views
- Collection Views
- Scroll Views
- Working with UIImageView
- Custom Views
- Other Common Views
- Auto Layout Basics
- Interface Builder Basics
- Animation Basics
- Services and Frameworks
- Troubleshooting Xcode Issues
- Building Data-driven Apps with Parse
- Multithreading in iOS
- Provisioning Profiles
- Upgrading Xcode Versions
- Universal Links
Great External Resources
- Apple official guides. The high level guides are a fantastic resource when starting out:
- Notate: Annotated YouTube Lectures
- NSHipster. A journal of the overlooked bits in Objective-C and Cocoa. Updated weekly.
- objc.io. A periodical about best practices and advanced techniques.
- NSScreencast. Screencasts that implement things on iOS.
- Mike Ash's blog. There is nothing this guy doesn't know.