slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
できる ! グローバル × スケーラブル × マルチデバイス 対応 のソーシャル アプリ開発 入門 PowerPoint Presentation
Download Presentation
できる ! グローバル × スケーラブル × マルチデバイス 対応 のソーシャル アプリ開発 入門

Loading in 2 Seconds...

play fullscreen
1 / 20

できる ! グローバル × スケーラブル × マルチデバイス 対応 のソーシャル アプリ開発 入門 - PowerPoint PPT Presentation


  • 114 Views
  • Uploaded on

できる ! グローバル × スケーラブル × マルチデバイス 対応 のソーシャル アプリ開発 入門. 砂金 信一郎 @shin135 日本マイクロソフト 株式会社. スピーカー紹介. 砂金(いさご)信一郎 Azure エバンジェリストやってます 。 自分のこと をシャア・アズナブルの前世と 信じて疑わないスジガネ入りのガンオタ 。 人生 に最も影響を与えたゲームは「ギレンの野望」 女子率 5% 未満の東工大出身

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

できる ! グローバル × スケーラブル × マルチデバイス 対応 のソーシャル アプリ開発 入門


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide2

できる!グローバル×スケーラブル×マルチデバイス対応のソーシャル アプリ開発入門

砂金信一郎 @shin135

日本マイクロソフト株式会社

slide3
スピーカー紹介
  • 砂金(いさご)信一郎
  • Azureエバンジェリストやってます。
  • 自分のことをシャア・アズナブルの前世と信じて疑わないスジガネ入りのガンオタ。
  • 人生に最も影響を与えたゲームは「ギレンの野望」
  • 女子率5%未満の東工大出身

→オラクルで新規事業開発など好き放題→ローランド・ベルガーで戦略コンサル修行→リアルコムをマザーズに上場→縁あってマイクロソフトに参画(イマココ!!)

slide4
本セッションの内容

主に開発者向け(非開発者の方は参考情報として)

  • クラウドサービスWindowsAzureの概要(簡単に)
  • ソーシャルゲーム Toolkit
  • Windows Phone Toolkit
  • iOS/ Android Toolkit
windows azure
Windows Azure とは…

Asia Pacific Region

IaaS

オンプレミス

SaaS

PaaS

  • ユーザーによる対応

ユーザーによる対応

アプリケーション

  • アプリケーション
  • アプリケーション
  • アプリケーション

データ

データ

データ

データ

  • 事業者側による対応

ランタイム

ランタイム

ランタイム

ランタイム

  • ユーザーによる対応

ミドルウェア

ミドルウェア

ミドルウェア

ミドルウェア

事業者側による対応

OS

OS

OS

OS

事業者による対応

仮想化技術

仮想化技術

仮想化技術

仮想化技術

サーバー

サーバー

サーバー

サーバー

ストレージ

  • ストレージ

ストレージ

ストレージ

ネットワーク

  • ネットワーク

ネットワーク

ネットワーク

windows azure platform
Windows Azure Platform の全体像

パーティション分割可能なデータ

ロードバランサー

アプリサーバー

Elastic

(増減自在)

分散

キャッシュ

分散ストレージ

ロードバランサー

リバースプロキシ、キャッシュ

管理サーバー

バックエンド処理

Webサーバー

分散キャッシュ

キュー

リレーショナルデータベース

大容量ファイル格納

CDN配信

サービス

キーバリューストア

ファイルシステム

サービスバス

Data Synchronization

アクセス権管理

データ同期

Access Control

Relational Database

Load Balancer

IIS

Web Server

VM Role

Worker Role

Web Role

Caching

レポーティング、BI

Queue

CDN

Table

Drive

Service Bus

Reporting & Analysis

VPN

Blob

Connect

slide8
マルチデバイス対応戦略の一般的な整理
  • ブラウザゲーム化 →カメラ、センサー等が使えない
  • ゲームエンジンの利用 →パフォーマンス問題
  • ネイティブ開発 →開発工数増大
  • HTML5×アプリのハイブリッド
toolkit accelerator training kit
Toolkit, Accelerator, Training Kit
  • Toolkit→目的別SDKやサンプル一式
  • Accelerator→セットアップを簡略化
  • Training Kit→ハンズオン用の手順解説 with サンプル
toolkit
ソーシャルゲーム Toolkit

http://watgames.codeplex.com/

windows phone toolkit
Windows PhoneToolkit

http://watoolkitwp7.codeplex.com/

toolkit for ios android
Toolkit for iOS/Android

https://github.com/microsoft-dpe/watoolkitios-lib

ios azure
iOSでAzureを使う3パターン

2

3

1

ネイティブアプリからストレージを使う

ブラウザアプリをクラウド側で

通知をクラウドから

slide14

ストレージ(BLOB)へのアクセス

Making the call

GET http://iostest.blob.core.windows.net/?comp=list&include=metadata

x-ms-date: Thu, 14 Apr 2011 20:30:00 GMT

x-ms-version: 2009-09-19

x-ms-blob-type: BlockBlob

Authorization: SharedKeyiostest:[ComputedHash]

<?xml version="1.0" encoding="utf-8"?>

<EnumerationResultsAccountName="http://myaccount.blob.core.windows.net/">

<Prefix>c</Prefix>

<MaxResults>3</MaxResults>

<Containers>

<Container>

<Name>container1</Name>

<Url>http://iostest.blob.core.windows.net/photos</Url>

<Properties>

<Last-Modified>Sun, 14 Apr 2011 20:09:03 GMT</Last-Modified>

</Properties>

</Container>

</Containers>

REST Endpoint:

http://[account].blob.core.windows.net

Blob Storage

slide15

各種Webフレームワーク

Appcelerator

http://appcelerator.com

Unify

http://unify.github.com/unify

PhoneGap

http://phonegap.com

slide16

Model View Controller での切り替え

if (useragent contains ”MSIE”)

User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E; InfoPath.3; MS-RTC LM 8)

Windows 7 / IE8.0

View

CSS

Controller

if (useragentcontains”iPhone”)

Web Role

ASP.NETMVC

ViewEngine

UserAgent: Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_1 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8C148 Safari/6533.18.5

View

CSS

iPhone OS 4.3.1

slide17

クラウド側からのプッシュ通知

Token Length

Payload Length

JSON formatted

アプリ登録

メッセージ送信を依頼

0

0

32

deviceToken

0

34

message

Apple Push Notification Service

gateway.sandbox.push.apple.com

ネイティブアプリ

Worker Role

メッセージ詳細の要求

詳細を取得

Windows Azure Queue

iPad/iPhone OS 4.x

Web Role

SessionUpdatedthrough Web

ユーザーの認可

Update Queue

メッセージ受信、アプリ起動

toolkit for facebook
Toolkit for Facebook

http://facebooksdk.codeplex.com/documentation

slide19
まとめ

Windows Azureは…

さまざまなデバイスのバックエンドとして利用できるオープンでスケーラブルなクラウドサービスです。

効率的に開発するために…

用途に応じて提供されているToolkitを活用してください。

各種技術ドキュメントも掲載しています。

iOS, Android, Windows Phone に対応するなら…

開発生産性の高いWindows Phoneをプライマリにして、他プラットフォームにポーティングすることを検討ください。