An Introduction to iOS Development - DevFest Nashville
-
Upload
kenneth-blake-merryman -
Category
Software
-
view
143 -
download
0
Transcript of An Introduction to iOS Development - DevFest Nashville
iOS Development
Blake Merryman
An Introduction to
COCOAHEADS[Nashville]
Covered today…Getting Started
Xcode & Swift
Model View Controller
Protocol Oriented
Callbacks
Building an App:
Networking
Model & Persistence
Building a UI
Putting it all Together
Getting Started
Apple Developer Account (free)
Xcode (free)
Mac (that can run Xcode)
XcodeIntegrated Development Environment
Batteries Included:
Libraries & Documentation Simulators Compiling, Debugging, Testing, Inspecting Signing, Packaging, & Submitting for Store
Swift
Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design
patterns.
~ swift.org
Swift
Safe. Fast. Expressive. Open-Source.
SwiftGenerics, Optionals, Tuples
Rich Structs & Enums
Built-in Error Handling
Functional Programming Patterns
Objective-C & C Interoperability
Model View Controller
CONTROLLER
MODEL
UpdatesSends user actions
NotifiesUpdates
VIEW
Model View Controller
CONTROLLER(S)
MODEL
UpdatesSends user actions
NotifiesUpdates
VIEW
Protocol OrientedProtocol - A contract between objects
OOP = Inheritance vs. POP = Composition
Classes, Structs, Enums can conform
Extend protocols w/ default implementations
Compose to achieve goal
CallbacksA method of explicitly passing data between objects.
Common Callbacks:
Delegates
DataSources
Closures / Blocks / Handlers
Callbacks
PARENT OBJECT
CHILD OBJECT
Owns
Delegates
Enough to be Dangerous…
macOS
watchOS
tvOS
Publish to the App Store
Paid Apple Developer Account($99)
iOS Device (for testing)
Send builds straight from Xcode
Questions?
Sources
Example Source Code
Start Developing iOS Apps: Jump Right In (Apple)
Star Wars API
List of fun APIs to play with (Reddit)