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

Chris Bailey & Robert Dickerson: End-to-end application development in Swift

1fa9cb8c7997c8c4d3d251fb5e41f749?s=47 Realm
September 02, 2016

Chris Bailey & Robert Dickerson: End-to-end application development in Swift

Bio:
Chris Bailey is a developer and technical leader in the Runtime Technologies team at IBM. Chris has spent over 15 years working on runtimes, working with the open source communities for Java, Node.js and most recently, Swift. He has contributed to the Swift Language, Foundation and Dispatch projects, and is currently working on making more "server" focused APIs available to the community.

Robert F. Dickerson is a lead software engineer in Swift@IBM at Austin, TX. He is focused on enriching the "Swift on the server" community by being a developer for the web framework "Kitura", Swift server libraries and SDKs, and also sample applications. He has taught computer science courses at the University of Texas (Austin) and the College of William and Mary and has written numerous research papers about mobile computing, Internet of Things, and virtual reality. When not busy writing code, he is busy swing dancing at nights.

Abstract:
The addition of support for Swift as a server-side programming language makes it possible to use not just the same language on client and server, but also to reuse APIs and code. This session will introduce you to new models of client and server interaction for application development, and show you how to rapidly build an app with both client and server components written in Swift.

Twitter: https://twitter.com/Chris__Bailey

1fa9cb8c7997c8c4d3d251fb5e41f749?s=128

Realm

September 02, 2016
Tweet

Transcript

  1. Swift @ IBM Engineering Team Chris Bailey(@Chris__Bailey)! Robert Dickerson (@rfdickerson)!

    ! September 2nd, 2016! End to End Application Development Swift @ IBM
  2. User-facing! Client Apps! Modern Application Design! App Services! 3rd Party

    Services! On Prem Services! End Users! Swift @ IBM
  3. Modern Application Design! End Users! User-facing! Client Apps! App Services!

    On Prem Services! 3rd Party Services! Swift @ IBM
  4. Modern Application Design! End Users! User-facing! Client Apps! App Services!

    On Prem Services! 3rd Party Services! Developer Experience Integrated Swift @ IBM
  5. Why Swift on the Server?! Swift @ IBM

  6. Performant Applications! Duration (s)! (lower is better)! Swift @ IBM

    http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm!
  7. Performant Applications! Duration (s)! (lower is better)! Swift @ IBM

    http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm!
  8. Performant Applications! Duration (s)! (lower is better)! Swift @ IBM

    http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm!
  9. Performant Applications! Duration (s)! (lower is better)! Swift @ IBM

    http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm!
  10. Low Memory! Memory Usage (MB)! (lower is better)! Swift @

    IBM http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm!
  11. Low Memory! Memory Usage (MB)! (lower is better)! Swift @

    IBM http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm!
  12. Low Memory! Memory Usage (MB)! (lower is better)! Swift @

    IBM http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm!
  13. Low Memory! Memory Usage (MB)! (lower is better)! Swift @

    IBM http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm!
  14. Swift is ideal for Cloud! Swift @ IBM

  15. Isomorphic Development! Swift @ IBM Create Swift Project

  16. Isomorphic Development! Swift @ IBM Create Swift Project Deploy Deploy

  17. Isomorphic Development! Swift @ IBM Create Swift Project Deploy Deploy

    Generate Swagger API Specification
  18. Sharing tools and technologies! Swift @ IBM

  19. How does this happen?! Swift @ IBM

  20. Extend Swift to the server! Swift @ IBM

  21. Linux Platforms Darwin Platforms ! ! ! ! ! !

    ! ! Swift on Linux! Swift @ IBM Swift Standard Library Foundation Dispatch Swift Standard Library Foundation Dispatch
  22. Add a Web Framework! Kitura: A Swift Web Framework and

    HTTP Server! https://github.com/IBM-Swift/Kitura Swift @ IBM
  23. Server / Cloud Deployment Server / Cloud Deployment Apple Client

    Deployment ! ! ! ! ! ! ! ! Client Facing App Client-Specific Libraries Kitura Web Framework! Swift @ IBM Swift Standard Library Foundation Dispatch Swift Standard Library Foundation Dispatch Networking Security HTTP Parsing Application Libraries! Application Specific Cloud Services Server-Specific Libraries Application Libraries!
  24. Server / Cloud Deployment Server / Cloud Deployment Apple Client

    Deployment ! ! ! ! ! ! ! ! Client Facing App Client-Specific Libraries Kitura Web Framework! Swift @ IBM Swift Standard Library Foundation Dispatch Swift Standard Library Foundation Dispatch Networking Security HTTP Parsing Application Libraries! Application Specific Cloud Services Server-Specific Libraries Swift “Server” APIs Application Libraries!
  25. Swift 3.0 + Kitura! ! ! Swift on the Server

    is Real! Swift @ IBM
  26. Let’s take a tour…! Swift @ IBM

  27. None
  28. None
  29. None
  30. None
  31. None
  32. None
  33. None
  34. None
  35. None
  36. None
  37. None
  38. None
  39. None
  40. None
  41. None
  42. None
  43. None
  44. None
  45. None
  46. None
  47. None
  48. None
  49. None
  50. None
  51. None
  52. None
  53. None
  54. None
  55. None
  56. None
  57. None
  58. None
  59. None
  60. None
  61. Discover Try Build IBM Cloud Tools! Package Catalog! Swift Sandbox!

    Kitura + Packages! Deploy Swift @ IBM Swift @ IBM
  62. Thank you!! Swift @ IBM