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

Developing User Interfaces

Developing User Interfaces

This talk is about concepts for implementing scalable user interfaces and what a potential solution for developing user interfaces with Swift might look like in the future.

Felix Gabel

May 30, 2016
Tweet

Other Decks in Programming

Transcript

  1. UI HTML CSS Flexbox Box Model AutoLayout Constraints Interface Builder

    XML Springs & Struts Autoresizing Animations Events Widgets Style Layout Anchors Grid
  2. Shortcomings • mutable view components • not thread-save and bound

    to main thread • state and complexity go hand in hand • written with Objective-C in mind • open source?
  3. what is out there… • Android XML and Constraints soon

    • Apple of course, UIKit, AppKit, Quartz, … • Facebook React Native, AsyncDisplayKit, ComponentsKit • Linux X11 … o_O • Windows I admit it, no clue at all
  4. • simple layout and styling of Components • immutable declaration

    of view hierarchy • parallelize layout calculations in background • live preview of changes • written in Swift • open source
  5. Overview • Animations ooooooh • Event Handling gestures, keyboard, mouse

    • Layout springs & struts, flexbox, constraints • Styling colors, shadow, border, …
  6. Layout Springs & Struts • performance • calculations Constraints •

    very natural • performance Flexbox • natural • performance*