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

Framework Independent Applications with Swift

Framework Independent Applications with Swift

How can one structure a swift app in order to decouple it from the platform (iOS, macOS, linux)? Learn through a practical example how cost effective it is to port a swift app for iOS to macOS and the benefits and costs associated with this approach

Tiago Martinho

June 25, 2016
Tweet

More Decks by Tiago Martinho

Other Decks in Technology

Transcript

  1. Also Know As • Ports-And-Adapters • Hexagonal Architecture • Clean

    Architecture • Layers • Onions • Protocol Oriented Programming 3
  2. 4

  3. 8 iOS, tvOS and macOS Application Bluetooth Communication Layer Native

    Android and iOS Application Share designs and architectures between platforms Share Code between Platforms TDD all the code
  4. 9 iOS, tvOS and macOS Application Bluetooth Communication Layer Native

    Android and iOS Application Share Code between Platforms TDD all the code Share designs and architectures between platforms
  5. Structure of the application 11 Framework Dependent Sensor View …

    Database Framework Independent Service Presenter … Repository
  6. Structure of the application 13 Framework Independent Service Presenter …

    Repository Use Cases Heart of the application Essential
  7. Practical Example Result? 4 apps with shared code - iOS

    (UIKit) - macOS (AppKit) - Swift (Linux) - Inter-app iOS 21