SWIFTly, Go Cloud!! - Swift@IBM

Preview:

Citation preview

SWIFTly, Go Cloud!Vidyasagar MachupalliDeveloper Advocate, IBM.

About ME

» Developer Advocate, IBM Cloud

» Polyglot & Pragmatic Programmer

» @VidyasagarMSC

» http://vidyasagarmsc.com

Why Swift?

Swift Performance

Swift Memory Usage

Swift Performance by Memory

User-facing ClientApps

AppServices

3rd PartyServices

On PremServices

EndUsers

Modern Application Design

EndUsers

User-facing ClientApps

AppServices

On PremServices

3rd PartyServices

Modern ApplicationDesign

EndUsers

User-facing ClientApps

AppServices

On PremServices

3rd PartyServices

Integrated DeveloperExperience

Modern ApplicationDesign

CreateSwiftProject

Isomorphic Development

CreateSwiftProject

Deploy Deploy

Swift@IBM

Isomorphic Development

CreateSwiftProject

Deploy DeployGenerate

Swagger APISpecification

Isomorphic Development

Swift@IBM

Breaking down barriers between client and server all over the world

Community enablement– Swift Sandbox– Swift Package Catalog

Consistent developer experience– Kitura Web Framework– Core swift.org contributions

Cloud enablement– IBM Cloud Deployment– IBM Cloud Tools for Swift

Bringing Swift to the Server

Community Enablement

http://swiftlang.ng.bluemix.net

IBM Swift Sandbox

Community Enablement

• Interactive sandbox for rapid prototyping and experimentation in Swift

• Saves your work

• Supports multiple versionsof Swift

• Responsive design

IBM Swift Sandbox

Community Enablement

http://swiftpkgs.ng.bluemix.net

IBM Swift Package Catalog

Community Enablement

• Find, explore and share packages from the open-source Swift ecosystem

• Explore dependencies

• Submit your own packages

IBM Swift Package Catalog

A Swift Web Framework and HTTP Server» Open sourced in February 2016» Modular package-based web framework

» Leverages libdispatch and Foundation» Driving IBM’s contributions into swift.org» Used at IBM for Swift server-side applications

ConsistentDeveloperExperience

https://github.com/IBM-Swift/Kitura

Kitura Web Framework

Request

Response

Client

Safari

Routing Service Logic

Linux / DockerWeb Server

Swift 3.0 + Kitura Swift on the Server is Real

Sample photo sharing app

Rich client interface written in Swift

Swift Server built with Kitura, IBM Cloud, Watson,

and OpenWhisk

Available at github.com/IBM-Swift/BluePic

BluePicEnd-to-end Swift

BluePic design pattern

Services

Object Storage

Watson Image Recognition

Cloudant

Core Cloud Services

Response

iOS App

ModelControllersViews

User Interaction

Request

Application Server

Client and ServiceIntegration

RoutingService Logic

End-to-end Swift

BluePic design pattern

Application Server

Client and ServiceIntegration

Core Cloud Services

Users

Photos

Image Insights = Tags

Push NotificationsMountain, Sunset, River

Meta Data

End-to-end Swift

Application tiers

Clients

Application ServerOther Services

Mountain, Sunset, River

Meta Data

Cloud

End-to-end Swift

BluePic development setup

macOS

Develop and Debug Application Server Other Services

Mountain, Sunset, River

Meta Data

Cloud

End-to-end Swift

Other Services

Cloud

Develop and Debug

macOS

Develop and Debug

Mountain, Sunset, River

Meta Data

BluePic development setupEnd-to-end Swift

+

IBM Cloud DeploymentCloud Enablement

+

Cloud Enablement

http://cloudtools.bluemix.net

IBM Cloud Tools for Swift

OtherServices

Cloud

DevelopandDebug

macOS

DevelopandDebug

Mountain,Sunset,River

MetaData

IBM Cloud Tools for Swift (Mac App)

BluePic development setupEnd-to-end Swift

+

Develop and Debug Develop and Debug Other Services

Mountain, Sunset, River

Meta Data

CloudmacOS

End-to-end Swift DevelopmentIBM Cloud Tools for Swift

IBM Cloud Tools for Swift

IBM Swift tools and tech

http://developer.ibm.com/swift

Get Started Today

Recommended