![Page 1: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/1.jpg)
Isomorphic Swift: A Myth or RealityVidyasagar Machupalli, Offering Manager for Dev Productivity, IBM
![Page 3: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/3.jpg)
Why Am I here?
• Isomorphism !!
• Why Swift?
• Swift on Server-side - Kitura
• Tools
• Code!!
![Page 4: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/4.jpg)
ISOMORPHISM
Isomorphism is a very general concept that appears in several areas of mathematics. The word derives from the Greek iso, meaning "equal," and morphosis, meaning "to form" or "to shape.”
Source: Wolfram MathWorld
![Page 5: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/5.jpg)
Technically….Isomorphic
“can execute both on the client and the server”
![Page 6: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/6.jpg)
Why Swift?
![Page 7: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/7.jpg)
SWIFT ON SERVER KITURA
Swift@IBM
![Page 8: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/8.jpg)
Kitura: An intro
Kitura.io
“A high performance and simple to use web framework for building modern Swift applications.”
![Page 9: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/9.jpg)
Routing with Kitura import Kitura
// Create a new routerlet router = Router()
// Handle HTTP GET requests to /router.get("/") { request, response, next in response.send("Hello, World!") next()}
// Add an HTTP server and connect it to the routerKitura.addHTTPServer(onPort: 8080, with: router)
// Start the Kitura runloop (this call never returns)Kitura.run()
![Page 10: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/10.jpg)
API Reference - Kitura.io
•Core •Credentials •Persistence •Sessions •Communications •Templating •Other Middlewares
![Page 11: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/11.jpg)
Use Familiar Libraries
![Page 12: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/12.jpg)
Leverage Docker For Your Development
docker pull ibmcom/swift-ubuntu:latest
docker run -i -t -v <absolute path to the swift package>:/root/<swift package name> ibmcom/swift-ubuntu:latest /bin/bash
![Page 14: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/14.jpg)
Isomorphic Application
CreateSwiftProject
Deploy Deploy
![Page 15: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/15.jpg)
DEMO
![Page 17: Isomorphic Swift: A Myth or Reality · • Why Swift? • Swift on Server-side - Kitura • Tools • Code!! ISOMORPHISM Isomorphism is a very general concept that appears in several](https://reader030.vdocuments.us/reader030/viewer/2022011823/5ed2c9ceae2cb511b1780d3b/html5/thumbnails/17.jpg)
Thank you