Upload
despark
View
191
Download
0
Tags:
Embed Size (px)
BUILDING AWESOME APPS2015
SVETOSLAV VELICHKOV (totally an iOS nerd)
WHERE IS THIS PRESENTATION GOING TO TAKE US?
What defines an awesome app? How do we make one?
Reaction and Flow Smoothness and Resilience Emotion
WHAT IS AN AWESOME APP?
FLOW
REACTIVE
SMOOTH
RESILIENT
EMOTIVE
HOW DO WE GO ABOUT MAKING AWESOME APPS?
STEP 1: GET STUFF OUT OF THE WAY
NECESSARY MINUTIAE
Rest networking JSON parsing/serialisation Secure data/credentials storage Data caching/local storage Data marshalling/testable application architecture Collection layout Form layout Rich text layout and editing
THEY MATTER BUT THEY ALSO DON’T
DON’T OVERTHINK IT
OF NETWORK STACKS AND 9 MILLION BICYCLES IN BEIJING
AND SUDDENLY AFNETWORKING
CHOOSE SOMETHING, STICK WITH IT, SEE WHERE IT HURTS, REPEAT
AVERSE REACTIVECOCOA
DON’T SHY AWAY FROM APPLE’S NEW STUFF (because Apple’s gonna’ Apple)
Adaptive User Interfaces AutoLayout PDF Image Resources App Extensions CloudKit
Networking -- AFNetworking https://github.com/AFNetworking/AFNetworking -- Alamofire https://github.com/Alamofire/Alamofire -- CocoaSPDY https://github.com/twitter/CocoaSPDY
JSON parsing/serialization -- Mantle (-> NSObject) https://github.com/Mantle/Mantle -- Groot (-> NSManagedObject)https://github.com/gonzalezreal/Groot
Local storage -- MagicalRecord https://github.com/magicalpanda/MagicalRecord -- Parse https://www.parse.com/
Form layout -- Form https://github.com/hyperoslo/Form
Data marshalling/testable application architecture -- ReactiveCocoa https://github.com/ReactiveCocoa/ReactiveCocoa
General UI layout -- ComponentKit http://componentkit.org/ -- Masonry https://github.com/Masonry/Masonry
STEP 2: PLAN FOR FLOW AND REACTIVITY
“YOU DESIGN THE IN-BETWEENS”~‟Sam Smart Guy”
STATES & TRANSITIONS
COMPONENTKIT (or React Native, if you are adventurous)
STEP 3: TWEAK SMOOTHNESS AND RESILIENCE
TAKEAWAYS SO FAR
• Spend as little as possible on stuff your user doesn’t see. • Figure out your UI and data flows, before you write a line
of code • Tweak the app to remove any friction
STEP 4: FINALLY, YOU ARE FREE TO GET CLEVER
QUESTIONS?