Slide 1

Slide 1 text

VAPOR an introduction to by @tanner0101

Slide 2

Slide 2 text

Web Framework VAPOR = written in Swift

Slide 3

Slide 3 text

Brief History 1.0 Sep, 2016 2.0 May, 2017 3.0 March, 2018 0.1 Jan, 2016 Rewrite

Slide 4

Slide 4 text

Server-side Swift? +

Slide 5

Slide 5 text

Server-side Swift? Swift ≥ 3 (early 2016) runs on Linux +

Slide 6

Slide 6 text

Server-side Swift? Swift ≥ 3 (early 2016) runs on Linux +

Slide 7

Slide 7 text

Web Framework VAPOR

Slide 8

Slide 8 text

Web Framework Static Website Dynamic Website Frontend VAPOR

Slide 9

Slide 9 text

Web Framework Backend JSON API WebSockets CLI App Static Website Dynamic Website Frontend VAPOR

Slide 10

Slide 10 text

Web Framework Backend JSON API WebSockets CLI App Static Website Dynamic Website Frontend VAPOR

Slide 11

Slide 11 text

Swift Backend JavaScript S.P.A. , Mobile Web Swift App , iOS Kotlin App Android Backend Swift App HTTP / JSON / WebSocket

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

Modern Language JavaScript 1995 Ruby 1996 Java 1996 Python 1994 Swift 2012 A language built with today's problems in mind. (i.e., type safety)

Slide 14

Slide 14 text

Protocols & Generics I ❤ Protocol-Oriented Programming Can you do this with inheritance (sub-classing?)

Slide 15

Slide 15 text

Type System & Compiler

Slide 16

Slide 16 text

Type System & Compiler

Slide 17

Slide 17 text

Type System & Compiler

Slide 18

Slide 18 text

Type System & Compiler

Slide 19

Slide 19 text

Type System & Compiler

Slide 20

Slide 20 text

Type System & Compiler

Slide 21

Slide 21 text

Type System & Compiler

Slide 22

Slide 22 text

Unicode Support Bonus

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

Ideology Beautiful APIs Safety Performance

Slide 25

Slide 25 text

Ideology Safety Use the type system to make most typical programming mistakes impossible.

Slide 26

Slide 26 text

Compile-Time Errors ✅

Slide 27

Slide 27 text

Ideology Safety Fail during development, not production.

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

No content

Slide 32

Slide 32 text

No content

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

Ideology Performance Make a high-level framework that is incredibly fast.

Slide 37

Slide 37 text

Ideology Beautiful APIs Create APIs that are simple, expressive, and maybe even fun.

Slide 38

Slide 38 text

No content

Slide 39

Slide 39 text

No content

Slide 40

Slide 40 text

No content

Slide 41

Slide 41 text

No content

Slide 42

Slide 42 text

No content

Slide 43

Slide 43 text

No content

Slide 44

Slide 44 text

No content

Slide 45

Slide 45 text

No content

Slide 46

Slide 46 text

http://vapor.codes @codevapor

Slide 47

Slide 47 text

http://vapor.codes @codevapor Thank you!