Ios Interview Worksheet: Objective-C
Ios Interview Worksheet: Objective-C
OBJECTIVE-C
Even though many are excited about Swift, most large-scale iOS projects exist in Objective-C. Even if you are plan-
ning to write a new Swift-based project, knowledge of Objective-C will help you better understand the history and
evolution of the iOS Framework.
Dealloc
Method Signatures
Protocols
Blocks
Categories
NSDictionary
NSArray
NSDate
waynewbishop.com
//2 Swift Algorithms - iOS Interview Worksheet (Version 3.0)
NSNumber
NSMutableString
NSError
NSURLSession
NSJSONSerialization
SWIFT
Swift is the new standard for building iOS projects. As Swift evolves, coders will need to adapt their skills ac-
cordingly. To stay competitive, stay current. With Swift now available as open-source, developers should also be
comfortable with swift.org, Github change proposals and the Swift evolution process.
Method Signatures
Arrays
Tuples
Dictionaries
Protocols
Extensions
Enums
waynewbishop.com
//3
Closures
Error Handling
Bridging Headers
Swift.org
DESIGN PATTERNS
Once you’ve explored Objective-C and Swift, being able recognize and implement design patterns will help you build
a scalable solution. While most patterns aren’t exclusive to iOS, being able to code specific Apple-based designs will
be your primary objective.
Object-Oriented Design
Key-Value Coding
IBOutlet / IBAction
Delegation
Inheritance
Singleton
Factory
waynewbishop.com
//4 Swift Algorithms - iOS Interview Worksheet (Version 3.0)
USER INTERFACES
Mobile users appreciate intuitive and easy-to-navigate user interfaces. Here are recommended tools and services for
creating fantastic experiences with iOS.
Storyboards
UIView Lifecycle
UIView Animations
Gesture Recognizers
UITableViewController
Animation Chaining
UINavigationController
Core Animation
DATA MANAGEMENT
Coding solutions often requires using Objective-C and Swift in conjunction with the iOS Framework. Manage your
data effectively by mastering the following topics:
Big O Notation
Core Data
waynewbishop.com
//5
NSUserDefaults
XCTest
Info.plist
NSURLSession
CocoaPods
VERSION CONTROL
Knowing how to manage code (either on your own or as part of a team) makes you a valuable asset. While there
are various version control systems available, knowledge of Git is highly valued in most development situations. As
such, its ideal that one understand Git concepts, tools and processes.
Fork, Clone
waynewbishop.com