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が頑張っているところにドキュメントの整備があります。

https://docs.vapor.codes/2.0/

サーバーサイド開発で必要な、ルーティング、レスポンス、リクエスト、HTTPメソッド、SQLのORマッパー、暗号化などなどをインストールと使い方を丁寧に記しています。

また、vapor.universityというコンテンツも用意しています。
これはVaporの使い方やチュートリアルの動画や記事を集めたページです。

http://vapor.university/

実装に迷ったらここをみましょう。

簡潔なメソッド、簡単環境構築

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などを駆使して解くといいです。

発表の様子

実行委員長長谷川さんのお言葉。

さいごに

発表はとても楽しい時間でした。
けっこう準備や練習した甲斐があったのか、会場の反応が良かったです。
LT応募してよかった。
来年も応募したいと思います!

最後に、スタッフの皆さん、発表を聞いてくれた皆さん、すてきな時間をありがとうございました!