$30 off During Our Annual Pro Sale. View Details »

Flow Controller - Revisited

Flow Controller - Revisited

Presented at CocoaHeads Montreal on February 9th, 2016.

Based on an old blog post:
http://ocollet.com/2014/02/06/flow-controller/

Sample code:
https://github.com/ocollet/Flow-Controller

Olivier Collet

February 09, 2016
Tweet

More Decks by Olivier Collet

Other Decks in Programming

Transcript

  1. FLOW CONTROLLER
    REVISITED
    OLIVIER COLLET. COCOAHEADS MONTREAL. 09.02.2016

    View Slide

  2. FIRST & LAST
    NAME
    EMAIL &
    PASSWORD
    PHOTO

    View Slide

  3. GIVE YOUR APP A BRAIN

    View Slide

  4. A FLOW CONTROLLER
    PREVENTS VIEW CONTROLLER
    DEPENDENCIES

    View Slide

  5. A FLOW CONTROLLER
    MANAGES THE LOGIC
    BETWEEN VIEW CONTROLLERS

    View Slide

  6. A FLOW CONTROLLER
    ORCHESTRATES
    THE VIEW CONTROLLERS

    View Slide

  7. A FLOW CONTROLLER
    CAN HANDLE A PORTION
    OF THE APPLICATION

    View Slide

  8. A FLOW CONTROLLER
    KEEPS A PORTION
    OF THE APPLICATION’S STATE

    View Slide

  9. APP DELEGATE
    LAUNCH FC
    MAIN FC
    SUBSCRIPTION FC
    ON-BOARDING FC AUTHENTICATION FC

    View Slide

  10. protocol FlowControllerDelegate {
    func flowControllerDidFinish(flowController: FlowController)
    }
    class FlowController: UIResponder, UIApplicationDelegate {
    var childFlowController: FlowController?
    var delegate: FlowControllerDelegate?
    var parentViewController: UIViewController?
    var currentViewController: UIViewController?
    }
    class NavigationFlowController: FlowController, UINavigationControllerDelegate {
    var navigationController: UINavigationController!
    }
    FlowController
    NavigationFlowController
    class TabBarFlowController: FlowController, UITabBarControllerDelegate {
    var tabBarController: UITabBarController!
    }
    TabBarFlowController

    View Slide

  11. Links
    • Sample code:

    https://github.com/ocollet/Flow-Controller
    • Blog post:

    http://ocollet.com/2014/02/06/flow-controller/

    View Slide

  12. Olivier Collet
    http://ocollet.com
    @ocollet

    View Slide