swift×azure〜宗教の違いのその先〜

39
Swift×Azure ~宗教の違いのその先~ 仙台Swift勉強会 田中賢治

Upload: kenji-tanaka

Post on 22-Jul-2015

415 views

Category:

Technology


3 download

TRANSCRIPT

Swift×Azure ~宗教の違いのその先~

仙台Swift勉強会 田中賢治

class 田中賢治: 田中家 { var 身分 = 文系大学生.3年 | デザイニウムインターン var 言語 = [Swift, Objective-C] var 仕事 = [株式会社GClue : “逆引きSwift"] var 太極拳 = 呉式太極拳 }

enum 最近の出来事: String {

case アニメ = "ごちうさ二期決定!"

case 勉強会 = "仙台Swift勉強会" }

自己紹介

明らかにヤバい

なぜこうなったのかというと…

Myo

Chaos

進捗逆戻り

・iOSしかできない

・むしろiOSだけでいい。Appleは神

・ジョブズ亡き今もその魂は受け継がれる

前提

でもバックエンドが無いと…

Mobile Servicesの迅速な対応

そ、そっちがその気なら使ってあげなくも無いんだから…!///

Appleにサーバーは無い

MS様の豊富な公式リファレンス!

大丈夫!

リアルタイムマルチプレイ次世代型サイバー

言霊アクションゲーム

SHIRITORI

今回作るもの

※これは個人の感想で感じ方には個人差があります

超エキサイティンッッ!!

やること

・Azureでバックエンド(フロントエンド)

・Node.jsでWebSocketを使って リアルタイム通信

・これらとiOSアプリの連携

バックエンドの実装

1.Socket.IOの実装

2.Azure Websitesにサイトを作る

3.gitリポジトリをサイトに上げる

4.動く!!!

1.Socket.IOの実装

AzureはNode.jsがそのまま動くよ!

npm installnpm install [email protected] -save

Socket.IOをダウンロード

1.Socket.IOの実装

/chat/index.js/↓

/chat/app.js/

中身作る

2.Azure Websitesにサイトを作る

WebSite作るazure site create mysitename -git

リモートリポジトリの追加git remote add azure SiteURL

3.gitリポジトリをサイトに上げる

目標をコミットしてpush…

目標をコミットしてpush…

git add .git commit -m “commit message” git push azure master

4.動く!!!

iOSの実装

1.UI作る

2.Socket連携する

3.動く!!!

1.UI作る

podをインストールする

JSQMessagesViewController

2.Socket連携する

SIOSocketpodをインストールする

3.動く!!!

実際にデモしてみよう!

ルール

1.スタートは「り」から

ルール

2.どれだけ多く得点できるか!

ルール

3.入力は全てひらがなでお願いします

(※仕様です)

ルール4.小文字や「ー」「ん」などは各自対応

 例)・るびー  → ーいぎりす   ・まっちょ → よーぐると    ・ふぁん  → んじゃめな

(※仕様です)

良かった点

・リファレンス豊富でやりやすかった・安い…安い…実際安い。

・Log出力がラク azure site log tail SiteName

・リアルタイム通信ゲーム作れる!!

悪かった点

js殺すべし、慈悲は無い

これまでの時代

これからの時代

Have a nice Development!

参考

Azure Website での Socket.IO を使用する Node.js チャット アプリケーションの構築http://azure.microsoft.com/ja-jp/documentation/articles/web-sites-nodejs-chat-app-socketio/

Swiftでソケット通信するチャットアプリhttp://qiita.com/ytakzk/items/c0a3af0f1b9e5a349d05JSQMessagesViewControllerhttps://github.com/jessesquires/JSQMessagesViewController