- About me
- I'm Wen-Hao Lue, UW Soft Eng 2014 graduate
- Building iOS apps since 2009 (iPhone OS 3!)
- Getting Started
- Most knowledge about iOS is gained through experience in Apple's frameworks (UIKit and Foundation)
- 80% of time spent learning UIKit and other Apple frameworks, 20% learning Swift or Objective-C
- Swift 4
- Object-oriented programming language with modern features
- Building your first iOS App
- Use Interface Builder to create user interfaces, and connect it with your code using @IBOutlet and @IBAction
- View Controllers
- Used to represent a "screen". Basic building block of navigation
- UINavigationController - "Wraps" view controllers, keeps track of your screens in a "stack", allowing you to move forward and backwards in navigation hierarchy
- Views
- Represents visual elements on the screen. Many useful built in views in UIKit.
- UITableView - Can be used to show a list of options to the user
- UIButton, UISwitch, UIImageView, and many more
- Full visual list can be found in Interface Builder
- 3rd Party Frameworks
- Alamofire (Networking)
- Realm (Mobile Database)
- New Apple Frameworks
- ARKit (New in iOS 11, lots of cool tools for Augmented Reality apps)
- CoreML (Machine Learning tools on the device)
- Useful websites for learning more
- objc.io
- NSHipster