visual studio 2012 で実現する html5 & マルチ デバイス時代の web 開発

22
Infragistics Developer Days Visual Studio 2012 が可能にするタッチ デバイス 業務アプリケーション開発 Web ソリューション構築編 Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発 日本マイクロソフト株式会社 デベロッパー & プラットフォーム統括本部 エバンジェリスト 井上 ( いのうえ あきら ) blogs.msdn.com/ chack twitter.com/chack411

Upload: akira-inoue

Post on 15-Jan-2015

2.532 views

Category:

Technology


4 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

Infragistics Developer DaysVisual Studio 2012 が可能にするタッチ デバイス

業務アプリケーション開発 ~ Web ソリューション構築編 ~

Visual Studio 2012 で実現する

HTML5 & マルチ デバイス時代の Web 開発

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

デベロッパー & プラットフォーム統括本部

エバンジェリスト

井上 章 (いのうえ あきら)

blogs.msdn.com/chack twitter.com/chack411

Page 2: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

セッションのゴールSession Takeaways

• Visual Studio 2012 の Web 開発新機能 を学ぶ

• Web 開発の最新事情 を知る

Page 3: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

モダン Web アプリとマルチデバイス対応

Page 4: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

マルチデバイス エクスペリエンスDevices, Platforms, Browsers

• クロス デバイス

• PC, スマートフォン, タブレット ...

• クロス プラットフォーム

• iOS, Android, Windows Phone ...

• クロス ブラウザー

• Web 標準と HTML5 / CSS3

• 実装レベル差異への対応

Page 5: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

レスポンシブ Web デザインMobile Web Experience

• CSS3 メディア クエリによるスタイルとレイアウト変更

• デザイン中心のマルチデバイス対応手法

• 共通した HTML マークアップによる UI エクスペリエンスの提供

Page 6: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

モダン Web アプリ エクスペリエンスSingle Page Application Architecture

クライアント サーバー

ASP.NET

RESTJSONXML

HTML

View Model

HTTPView

Async

Web API

Page 7: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

Visual Studio 2012マルチデバイス向け新機能

Page 8: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

ASP.NET MVC 4Improvements of ASP.NET MVC 4

• HTML5 対応プロジェクト テンプレート

• モバイル アプリケーション テンプレート

• Display Modes とビューの切り替え

• スクリプトの自動縮小化 & 結合処理

• Task, async, await による非同期アクション• Task-based Asynchronous Pattern (TAP)

HTML ベースの UI 開発

Model-View-Controller パターン

Page 9: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

モバイル アプリケーション テンプレート新しいモバイル向け プロジェクト テンプレートの追加

• jQuery Mobile の採用

Page 10: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

Display Modesモバイル デバイスへの対応

• MVC フレームワークによるモバイル デバイスの判別

• モバイル向けビュー (*.mobile.*) へ自動切り替え

Page 11: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

ASP.NET Web APINew Framework for HTTP Services

• URL ルーティング

• モデル バインディング

• スキャフォールディング(w/ Entity Framework)

• OData クエリパラメータ(Microsoft.AspNet.WebApi.Odata)

RESTful サービス構築のためのフレームワーク

MVC 4 プロジェクト テンプレートの一部として提供

Page 12: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

ASP.NET SignalRAsync library for .NET

• クライアント - サーバー間の永続的コネクション

• トランスポートの自動ネゴシエーション

• WebSocket, Server-Sent Events, Forever Frames, Long Polling

• サーバーからクライアントへのプッシュや RPC 通信

• 1 サーバーあたり数千の接続を非同期で処理

リアルタイム・非同期・双方向通信ライブラリ

NuGet パッケージとして提供

Page 13: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

コーディング支援機能Improvements of Editors

• インテリセンス・コード スニペットの強化

• HTML5 / CSS3 スキーマ対応

• 開始タグと終了タグの同期リネーム

• CSS カラー ピッカー

• ベンダー プレフィックスとメディア クエリー

• ECMAScript 5 / HTML5 APIs サポート

• アウトライン表示

Page 14: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

さらに進化した Web 開発 IDEImprovements of Web Development

• Page Inspector (ページ インスペクター)

• HTML, CSS の確認と検査

• サーバー サイド コード連動

• ページのプレビュー

• 画像のサムネイル表示

• デバッグ用ブラウザーの切り替え機能

Page 15: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

デバッグとテスト

Page 16: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

Web アプリのテストImprovements of Testing Tools

• JavaScript の単体テスト

• Jasmine / QUnit をテスト エクスプローラーに統合可能

• 拡張機能: Chutzpah※ test adapter for Visual Studio 2012

• Web パフォーマンスとロード テストのプロジェクト

• 容易なパフォーマンスとストレス テストの実施

• 同時アクセス ユーザー数や使用ブラウザーなどをシミュレート

※ フツパ

Page 17: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

Visual Studio 2012 / ASP.NETWeb 開発の今後

Page 18: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

Web アプリ開発のトレンドこれからの Web アプリケーションで考えなければならないこと

• マルチデバイス対応

• Web アプリか? ネイティブ アプリか?

• HTTP 通信ペイロード削減

• レスポンシブ Web デザイン

• デザイン・開発ツールの選択

• Single Page Application アーキテクチャ (SPA)

• AJAX 処理における SEO 対策やブラウザ履歴管理対応

• オフライン実行への対応

• HTTP REST サービス (Web API)

• リアルタイム コミュニケーション

Page 19: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

One ASP.NETASP.NET Web Stack

※ One ASP.NET - Making JSON Web APIs with ASP.NET MVC 4 Beta and ASP.NET Web API : www.hanselman.com

Page 20: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発
Page 21: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発
Page 22: Visual Studio 2012 で実現する HTML5 & マルチ デバイス時代の Web 開発

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.