Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Doppl, an intro!

Doppl, an intro!

Scott Alexander-Bown

November 28, 2017
Tweet

More Decks by Scott Alexander-Bown

Other Decks in Technology

Transcript

  1. Scott Alexander-Bown
    @ScottyAB
    [email protected]

    View full-size slide

  2. Goal:
    Intro to doppl

    View full-size slide

  3. Non-Goal:
    Deep dive
    Not an expert
    in doppl :’(

    View full-size slide

  4. Agenda
    What is it?
    Show me the code!
    Cavets
    Why should you care?
    @ScottyAB

    View full-size slide

  5. Android centric code sharing
    based on J2objc
    @ScottyAB

    View full-size slide

  6. What do you mean?
    Image thanks to Kevin Galligan, touchlab

    View full-size slide

  7. If users see it, make it native
    Otherwise, make it once*
    @ScottyAB

    View full-size slide

  8. *Platform integration
    @ScottyAB

    View full-size slide

  9. What Could Doppl Convert?
    @ScottyAB

    View full-size slide

  10. What Could Doppl Convert?
    Repository
    View-Models
    Presenters
    Platform-Agnostic Presentation
    Utility Code
    @ScottyAB

    View full-size slide

  11. Android library support
    Architecture components
    Reactive: RxJava2
    Remote: Retrofit, OkHttp
    Local: Room, SQL Cipher for Android
    Testing: Mockito
    @ScottyAB

    View full-size slide

  12. Show me the code!

    View full-size slide

  13. Android code: Host Interface @ScottyAB

    View full-size slide

  14. Android code: Fragment @ScottyAB

    View full-size slide

  15. Converting to iOS
    Download the Doppl Runtime (1.6GB)
    $ ./gradlew dopplBuild
    $ pod install
    @ScottyAB

    View full-size slide

  16. iOS: View Controller @ScottyAB

    View full-size slide

  17. Rough edges
    Memory Cycles/Reference counting
    Runtime size (15MB)
    Debugging via Xcode can be flakey
    No support for Swift/Kotlin
    @ScottyAB

    View full-size slide

  18. Tech preview
    @ScottyAB

    View full-size slide

  19. Doppl is a Trademark of Touch Lab Inc.
    @ScottyAB

    View full-size slide

  20. Get started/resources
    http://doppl.co/
    @doppllib on Twitter
    Doppl Slack group
    `doppl` Stack Overflow tag
    https://github.com/doppllib/DroidconDopplExample
    @ScottyAB

    View full-size slide

  21. Wrap up
    @ScottyAB

    View full-size slide

  22. Why should you care?
    Native tools/SDK wins
    Share allot or a little
    Cost cutting / Management pressure
    @ScottyAB

    View full-size slide

  23. Scott Alexander-Bown
    @ScottyAB
    [email protected]
    Thanks for listening!
    More info doppl.co
    Available
    for hire

    View full-size slide