クライアント技術から見たbuild2014 wrap-up
DESCRIPTION
2014年4月に開催されたBuild 2014からクライアントアプリ開発のトピックについてゆるーく纏めました。TRANSCRIPT
![Page 1: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/1.jpg)
クライアント技術から見たBuild 2014 Wrap-up森 博之 (Microsoft MVP for Visual C#)極東IT-Engineers/RIAアーキテクチャ研究会
![Page 2: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/2.jpg)
自己紹介森 博之(もり ひろゆき)
MS開発技術を専門としたフリーランスエンジニアMicrosoft MVP for Visual C#極東IT-Engineers 代表ブログ:もり ひろゆきの日々是勉強
http://moriblog.kit-eng.comTwitterWindows8対応[基本+実用]
Windowsストアアプリ開発入門 好評発売中!
![Page 3: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/3.jpg)
AgendaBuild 2014 Wrap-up
.NET Native
Windows Phone
Universal Windows Apps
![Page 4: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/4.jpg)
Build 2014Wrap-up!
![Page 5: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/5.jpg)
Build 2014米マイクロソフトが開催する開発者向けカンファレンス
過去、マイクロソフトが新しい戦略、サービス、技術などのお披露目が行われてきたイベント
技術者視点のDeepなセッションが数多く実施されている
![Page 6: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/6.jpg)
Desktop apps , Windows Store Apps and Windows Phone…クライアント技術で見ると…Windows Store Apps
.NET Native
Windows PhoneWinRTSilverlight 8.1(!)
Universal Apps
![Page 7: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/7.jpg)
.NET Native
![Page 8: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/8.jpg)
.NET NativeC#からいきなりNativeコードにコンパイルできる
内部的にはMSILからNativeのコンパイル済みバイナリを保持する
C# MSIL Native
C# Native
.NET Framework
.NET Native
![Page 9: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/9.jpg)
.NET Native.NET Frameworkは必要ない→コンパイル時に静的リンクする
現在使えないAPIもある→System.ServiceModel名前空間→Visual Basic
PreviewではC#のみサポート→今後は他の.NET系言語へのサポートを広げる
現在はStore Appsのみ→将来的にはDesktop Appsも…。
![Page 10: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/10.jpg)
Windows Phone
![Page 11: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/11.jpg)
Windows Phone 8.1新しいアプリケーションモデル
Windows Phone 8.1には2つのXAML Frameworkが動作する
XAMLWinRT系APIで動作するフレームワーク
Silverlight従来のSilverlightベースのフレームワーク
![Page 12: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/12.jpg)
Trigger based executionさまざまなトリガーによりアプリを起動することができる。
トリガーとなる機能
→Push通知、Geofencing、Bluetooth LEデバイス、Schedule、センサー接続、タイムゾーンの変更、時間によるトリガー…
![Page 13: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/13.jpg)
GeofencingLocationによるトリガーアプリによってアンカーを設定し、
エリアに到達したらトリガーを実行
![Page 14: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/14.jpg)
Windows Phone Silverlight Apps!8.1ではXAML appsとSilverlight appsが存在する従来のSL8.0appsは8.1でも動作するアップグレードすると構成ファイルが増える!
→100%ソース互換ではないBackground Audioなど、サポートされなくなった機能もある
![Page 15: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/15.jpg)
Windows Phone Silverlight 8.1SD Cards Access
Share Source/ShareTargetDataRoamingStorageアクセスEtc…
![Page 16: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/16.jpg)
Universal Windows Appsユニバーサルアプリ
![Page 17: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/17.jpg)
Productivity Future Visionhttps://www.microsoft.com/office/vision/https://www.youtube.com/watch?v=a6cNdhOKwi0
![Page 18: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/18.jpg)
ユニバーサルアプリWinRTベースのランタイム上で動作するアプリ
Windowsストアアプリ・Windows Phoneでひとまとめにして開発できる・Windows 8.1・Windows Phone 8.1
現在サポートしている言語はC#, C++, JavaScript
![Page 19: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/19.jpg)
特徴
APIがほぼ共通である→ある程度、ソースコードを共通化できる→もちろん、プラットフォーム独自のAPIもある
リソースを共有できる
→Shared Project
![Page 20: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/20.jpg)
Shared ProjectWindowsストアアプリ・Windows Phone共通で利用できるコードやリソースなどを共有できる。
利用できるリソース
・Code files .cs, .js, .cpp, .h・ XAML・ Images .png, .jpg…・ RESW・ XML etc…
![Page 21: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/21.jpg)
SharedProject内のコードプラットフォーム固有コードを書く場合は…
#if WINDOWS_PHONE_APPWindows.Phone.UI.Input.HardwareButtons.BackPressed +=
this.HardwareButtons_BackPressed;#endif
![Page 22: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/22.jpg)
開発環境ナビゲーションバーによってプラットフォーム切替可能
インテリセンスでプラットフォーム依存APIをワーニング表示
スタートアッププロジェクトの切替
![Page 23: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/23.jpg)
まとめ.NET Native
.NET系言語でNativeアプリ開発が行える!
Windows Phone日本はまだかっ!
Universal Windows Appsシームレスなアプリの開発基盤となるか!?
![Page 24: クライアント技術から見たBuild2014 Wrap-up](https://reader033.vdocuments.net/reader033/viewer/2022052412/5588fbdad8b42a2c1a8b4621/html5/thumbnails/24.jpg)
Thank you!