Despark: Building Awesome Apps by Svetoslav Velichkov

of 31 /31
BUILDING AWESOME APPS 2015

Embed Size (px)

Transcript of Despark: Building Awesome Apps by Svetoslav Velichkov

1. BUILDING AWESOME APPS 2015 2. SVETOSLAV VELICHKOV (totally an iOS nerd) 3. WHERE IS THIS PRESENTATION GOING TO TAKE US? What denes an awesome app? How do we make one? Reaction and Flow Smoothness and Resilience Emotion 4. WHAT IS AN AWESOME APP? 5. FLOW 6. REACTIVE 7. SMOOTH 8. RESILIENT 9. EMOTIVE 10. HOW DO WE GO ABOUT MAKING AWESOME APPS? 11. STEP 1: GET STUFF OUT OF THE WAY 12. 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 13. THEY MATTER BUT THEY ALSO DONT 14. DONT OVERTHINK IT 15. OF NETWORK STACKS AND 9 MILLION BICYCLES IN BEIJING 16. AND SUDDENLY AFNETWORKING 17. CHOOSE SOMETHING, STICK WITH IT, SEE WHERE IT HURTS, REPEAT 18. AVERSE REACTIVECOCOA 19. DONT SHY AWAY FROM APPLES NEW STUFF (because Apples gonna Apple) Adaptive User Interfaces AutoLayout PDF Image Resources App Extensions CloudKit 20. Networking -- AFNetworking https://github.com/AFNetworking/AFNetworking -- Alamore https://github.com/Alamore/Alamore -- 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 21. STEP 2: PLAN FOR FLOW AND REACTIVITY 22. YOU DESIGN THE IN-BETWEENS ~Sam Smart Guy 23. STATES & TRANSITIONS 24. COMPONENTKIT (or React Native, if you are adventurous) 25. STEP 3: TWEAK SMOOTHNESS AND RESILIENCE 26. TAKEAWAYS SO FAR Spend as little as possible on stuff your user doesnt see. Figure out your UI and data ows, before you write a line of code Tweak the app to remove any friction 27. STEP 4: FINALLY, YOU ARE FREE TO GET CLEVER 28. QUESTIONS?