iOSDCでVaporを布教してきた
佐藤です。
先週は日本で最大級のiOSエンジニアのカンファレンス、iOSDCに参加してきました。
参加人数800人以上、スピーカー数50以上の大規模なカンファレンスです。
9月15日から9月17日まで稲田大学理工学部 西早稲田キャンパスで行われました。
スポンサー紹介をエヴァンゲリオンのミサトさんで有名な
三石琴乃さん読み上げて来れました。
とても驚きました。
すごい、豪華です。iOSDC。
私はLT枠として「5分でわかるServer-side Swift Vaporの魅力」を発表してきました。
5分でわかるServer-side Swift Vaporの魅力
Vaporは近年話題になりつつあるServer Side Swiftのフレームワークの1つです。
Vaporの魅力は以下の4つだと思います。
- Server Side Swift
- 高いパフォーマンス
- ドキュメントが充実
- 簡潔なメソッド、簡単環境構築
Server Side Swift
一番の魅力はSwiftでかけること。
iOSエンジニアでもサーバーサイドをいつもと同じ言語でかけるのは魅力です。
高いパフォーマンス
VaporはRubyやPHPの100倍のパフォーマンスがでるとのことです。
またプレーンテキストの読み込みをしたパフォーマンステストではGoより負けるけどNode.jsには勝つという結果になったそうです。
元ネタはこちらです。
Server Side Swift vs. The Other Guys — 2: Speed
ドキュメントが充実
Vaporが頑張っているところにドキュメントの整備があります。
サーバーサイド開発で必要な、ルーティング、レスポンス、リクエスト、HTTPメソッド、SQLのORマッパー、暗号化などなどをインストールと使い方を丁寧に記しています。
また、vapor.universityというコンテンツも用意しています。
これはVaporの使い方やチュートリアルの動画や記事を集めたページです。
実装に迷ったらここをみましょう。
簡潔なメソッド、簡単環境構築
VaporにはVapor ToolsというCLIツールが提供されています。
これを使うことで簡単に環境構築ができます。
インストール
// Vapor toolboxのインストール
brew install vapor
// インストールの確認
vapor --help
アプリケーション作成、ビルド&ラン
vapor new <name>
でアプリケーションを作ってみましょう。
build、runでローカルサーバーが立ち上がります。
$ vapor new FirstVapor --template=web
$ cd FirstVapor/
$ vapor build
$ vapor run
http://0.0.0.0:8080/
ローカルサーバーが立ち上がり、デフォルトのページが表示されます。
その他、Xcodeのプロジェクトを作るには以下のコマンドを打ちます。
$ vapor xcode
Herokuにデプロイするにはgitでコミットしてvapor heroku initをするとHerokuのアプリケーションが作れます。
$ git add ./
$ git commit -m "init commit"
$ vapor heroku init
Vaporで作ったもの
さて、Vaporの使い方を伝えましたが、私もVaporで作ったWebアプリケーションがあります。
https://the-will-of-a-rich-man.herokuapp.com/
WebAPIを使ったクイズです。
若くしてなくなった大富豪の遺言の謎を解くというストーリーでGET、POST、PUT、DELETEなどのHTTPメソッドを駆使して5000兆円をゲットする内容です。
CURLやPostmanなどを駆使して解くといいです。
発表の様子
— akatsuki174 (@akatsuki174) September 17, 2017
— akatsuki174 (@akatsuki174) September 17, 2017
— akatsuki174 (@akatsuki174) September 17, 2017
— Masayuki Iwai (@myb) September 17, 2017
— いたる (@itaru_sugimoto) September 17, 2017
— kenta.nakai (@urouro_n) September 17, 2017
.@hatakenokakashi 「みなさんのSwift愛はそんなものですか!?」#iosdc #a
— ダンボー田中@iOSDC 前夜祭登壇組 (@ktanaka117) September 17, 2017
— 星野恵瑠@今日も1日フレンズ㌠ (@lovee) September 17, 2017
— akatsuki174 (@akatsuki174) September 17, 2017
.@hatakenokakashi 「クイズを解くと5000兆円がもらえます」#iosdc #a
— ダンボー田中@iOSDC 前夜祭登壇組 (@ktanaka117) September 17, 2017
— Daigo Wakabayashi (@frnk) September 17, 2017
— akatsuki174 (@akatsuki174) September 17, 2017
— akatsuki174 (@akatsuki174) September 17, 2017
— Kazumasa Kumamoto (@kumamo_tone) September 17, 2017
— はらふじ (@HARAFUJI_Tech) September 17, 2017
Vapor! #iosdc #a https://t.co/yY6srOwtte
— GotouReiko (@burakon) September 17, 2017
— Shota Nakagami (@shtnkgm) September 17, 2017
— はらふじ (@HARAFUJI_Tech) September 17, 2017
— kenta.nakai (@urouro_n) September 17, 2017
— よこち / Hayato YOKOTA (@yokochie) September 17, 2017
— sheep (@rikky) September 17, 2017
— nabe (@_nabech) September 17, 2017
— Shota Nakagami (@shtnkgm) September 17, 2017
— よこち / Hayato YOKOTA (@yokochie) September 17, 2017
— GotouReiko (@burakon) September 17, 2017
— akatsuki174 (@akatsuki174) September 17, 2017実行委員長長谷川さんのお言葉。
— sheep (@rikky) September 17, 2017
さいごに
発表はとても楽しい時間でした。
けっこう準備や練習した甲斐があったのか、会場の反応が良かったです。
LT応募してよかった。
来年も応募したいと思います!
最後に、スタッフの皆さん、発表を聞いてくれた皆さん、すてきな時間をありがとうございました!