Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Lviv MD Day 2015 Олексій Демедецький "Using Future for async flow application design"

354 Aufrufe

Veröffentlicht am

Lviv MD Day 2015 Олексій Демедецький "Using Future for async flow application design"

Veröffentlicht in: Business
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Lviv MD Day 2015 Олексій Демедецький "Using Future for async flow application design"

  1. 1. USING FUTURES @daloog
  2. 2. ABOUT skype: nobidon dalog@me.com https://speakerdeck.com/dalog
  3. 3. ASYNC VS PARALLEL
  4. 4. ASYNC DO THINGS AT DEFERENT TIME
  5. 5. PARALLEL DO THINGS AT THE SAME TIME
  6. 6. GCD
  7. 7. GCD
  8. 8. NSOPERATION
  9. 9. NSOPERATION
  10. 10. [ _ TARGET: ACTION: ]
  11. 11. DELEGATE
  12. 12. STRATEGY AND CALLBACK
  13. 13. BLOCK
  14. 14. CALLBACK!!!
  15. 15. SIGNATURE DANCE
  16. 16. SEPARATE WORK FROM RESULT DELIVERY
  17. 17. SETTER
  18. 18. T -> ()
  19. 19. GETTER
  20. 20. () -> T
  21. 21. T -> U IS (GET, SET) -> ()
  22. 22. T -> U (() -> T, U -> ()) -> ()
  23. 23. 🙀💀
  24. 24. ASYNC?
  25. 25. ASYNC GETTER
  26. 26. () -> T (T -> ()) -> () SET -> ()
  27. 27. SET<T> -> () FUTURE<T>
  28. 28. ASYNC SETTER
  29. 29. T -> () () -> (T -> ()) () -> SET
  30. 30. () -> SET<T> PROMISE<T>
  31. 31. GETTER + SETTER = STATE
  32. 32. PROMISE + FUTURE = ASYNC STATE
  33. 33. ASYNC STATE >>> STATE
  34. 34. WHY THIS IS SO HARD???
  35. 35. ACTUALLY NOT
  36. 36. THINK ABOUT FUTURE AS A BOX
  37. 37. BOX WILL BE OPENED. SOMEDAY. MAYBE.
  38. 38. A = B C = A
  39. 39. CHAIN?
  40. 40. T -> U U -> K T -> K
  41. 41. T -> F<U>
 U -> F<K> T -> F<K>
  42. 42. (F<U> , U -> F<K>) -> F<K>
  43. 43. AND THEN
  44. 44. FLAT MAP
  45. 45. ERROR?
  46. 46. TRY<T, E>
  47. 47. FUTURE<T, E> = FUTURE<TRY<T, E>>
  48. 48. WHAT CAN BE FUTURE?
  49. 49. ANYTHING
  50. 50. UI
  51. 51. USING FUTURES FOR REVERSING UI FLOW. HTTPS://MEDIUM.COM/P/D3F5B7CA32D9/ EDIT
  52. 52. VM -> F<ACTION>
  53. 53. NETWORK BLUETOOTH …
  54. 54. EXPOSE F<> AS PUBLIC API
  55. 55. ALWAYS
  56. 56. USE ANY LIB • https://github.com/BoltsFramework/Bolts-iOS • https://github.com/mxcl/PromiseKit • https://github.com/Thomvis/BrightFutures • https://realm.io/news/swift-summit-javier-soto-futures/ • https://realm.io/news/swift-tasks-nevyn-bengtsson/
  57. 57. ALL LIBS EQUAL ITS JUST ASYNC STATE
  58. 58. FUTURE / PROMISE ASYNC GET/SET

×