SlideShare a Scribd company logo
1 of 48
Download to read offline
.NET技術で
これからも食べていくための
技術戦略
グレープシティ株式会社 製品戦略室 プリンシパルエンジニア
八巻 雄哉
Twitter @yamaki00
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
ビジネスアプリケーション向け.NETテクノロジガイド
 Microsoft .NET ホーム
http://www.microsoft.com/ja-jp/net/
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
Established(従来型)とEmerging(次世代型)
 Establishedアプリケーションパターン
 クライアント/サーバー方式などのテクノロジパターンを使用して
開発されたアプリケーションや、デスクトップブラウザーに
最適化された Webアプリケーションの開発に用いる技術パターン。
基盤アプリケーションとして機能するもので、既存のビジネス
プロセスに大きな比重を置いて設計されています。
 Emergingアプリケーションパターン
 マルチデバイスやクラウドといった新しいテクノロジで実現される
アプリケーション。アプリケーションをエンドユーザー中心に
拡張することで、Establishedパターンを補完します。
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
『英和辞書 - goo辞書』より
 established【形】
1. 〈秩序・慣習などが〉確立した[された], 既定
の;(慣習的に)認められた;立証済みの;〈法
律などが〉制定された
2. 〈地位・人が〉常設の, 常勤の.
3. 〈宗教・教会が〉国教の.
4. 〈人・動植物が〉(新しい土地に)定住[定着]
した.
 emerging【形】
 発展段階の;新出現の
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
.NETエンジニアの状況は?
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
.NET開発者中心 読者調査レポート
0% 10% 20% 30% 40% 50% 60% 70%
Silverlight
ASP.NET MVC
ASP.NET Webフォーム
WPF
Windowsフォーム
2011年9月 2012年9月
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
EmergingとEstablishedの関係
モダンビジネスアプリケーション
従来型のアプリケーション パターン
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
モダンな業務アプリへ
 現行の開発技術はestablishedパターンに深く依存して
いるため、モダンなアプリに必要とされるemergingパ
ターンとの統合は簡単ではありません。
 マイクロソフトプラットフォームは既存アプリケーショ
ンに基づいて構築されており、emergingアプリケー
ションパターンへの拡張を可能にします。また、複数の
開発テクノロジがサポートされるため、開発者のスキル
や、既存アプリケーションで使用されているテクノロジ
に応じ、最適な方法を選ぶことができます。
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
本日ご紹介する技術トピック
ポータブルクラスライブラリ
ASP.NET Web API
シングルページアプリケーション
ディスプレイモード
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
ポータブルクラスライブラリ
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
.NET
Framework
Silverlight Windows Phone
Windows ストア
アプリ用 .NET
Xbox 360 Xamarin.Android Xamarin.iOS
ポータブルクラスライブラリ
 上記のプラットフォームで参照できるマネージアセンブリ
 コードを最大限に再利用し、必要なプロジェクトの数を削減
 同じコードベースを共有するマルチターゲットアプリで効果的
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
サポートされている機能
機能
.NET
Framework
Windows ストア Silverlight Windows Phone Xamarin
コア ✅ ✅ ✅ ✅ ✅
LINQ ✅ ✅ ✅ ✅ ✅
IQueryable ✅ ✅ ✅ 7.5以上 ✅
Dynamic キーワード 4.5 のみ ✅ ✅ ✅
MEF (Managed Extensibility Framework) ✅ ✅ ✅ ✅
Network Class Library (NCL) ✅ ✅ ✅ ✅ ✅
シリアル化 ✅ ✅ ✅ ✅ ✅
WCF
✅ ✅ ✅ ✅ ✅
Model-View-View Model (MVVM) 4.5 のみ ✅ ✅ ✅ ✅
データ アノテーション 4.0.3以上 ✅ ✅ ✅
XLINQ 4.0.3以上 ✅ ✅ ✅ ✅
System.Numerics ✅ ✅ ✅ ✅
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
Demo1
MSDNライブラリ
Model-View-View Model を利用した汎用性のあるクラス ライブラリの使用
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
MVVMのイメージ図
View
ViewModel
Model
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
ASP.NET Web API
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
ASP.NET Web API
 RESTfulなサービスを提供するのに適した
HTTPサービス構築用のフレームワーク
 HTTPメソッドの「GET」「POST」「DELETE」「PUT」
を使ってリソースを操作
 リソースとは「Web上に存在する名前を持った
ありとあらゆる情報」
 リソースはそれぞれ固有のURIを持つ
メソッド 役割
GET リソースの取得
POST リソースの新規作成
PUT 既存のリソースのアップデート
DELETE リソースの削除
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
Demo2
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
Microsoft ASP.NET Web API 2.1 Client
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
振り返り
デスクトップ
アプリ(WPF)
Windowsストア
アプリ
ViewModelと
Model
(ポータブル
クラスライブラリ)
XAML C#/VisualBasic
クライアント側 サーバー側
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
デスクトップアプリ
(WPF)
Windowsストアアプリ
振り返り
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
グレープシティのソリューション
Desktop Packシリーズ
44%OFF 42%OFF
ComponentOne Studio for WinRT XAML
MultTouch for Windows Forms 1.0J
各Windowsフォーム製品でのタッチ対応
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
シングルページアプリケーション
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
シングルページアプリケーション(SPA)
 クライアントサイドのアーキテクチャに重点をおいた
設計アプローチ
 その名の通り、 1つのページで完全に動作する
Webアプリ
 ページ全体の更新や再読み込みなし
 アプリケーションプログラムのほとんどは
クライアントサイドで実行され、Webブラウザーと
サーバーのやり取りは必要なデータの交換のみ
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
One ASP.NET
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
Single Page Application テンプレート
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
ASP.NETシングルページアプリケーション構成
JSON/XML
クライアント サーバー
Knockout
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
Knockout
UIに必要なのは ViewModel (シンプルなモデルオブジェ
クト) とデータバインドだけ。ややこしいDOM操作なし
で、動的なインターフェイスを作ることができます。
ViewModel のプロパティが変更されると、自動的にUI
の関連付けられた部分を更新します。
データの結合や変換を実現するためのデータ間の関係
チェーンを暗黙的に設定します。
幾重にもネストされたテンプレートも、バインドされた
ViewModel を用いて素早くUIを生成します。
宣言型バインディング
UIの自動更新
依存関係のトラッキング
UIテンプレート
オープンソースのJavaScript MVVMライブラリ
Knockout.jsの概要 // Speaker Deck
https://speakerdeck.com/mayuki/knockout-dot-jsfalsegai-yao
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
Knockoutjs.com - Hello World
Example - jsFiddle
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
Demo3
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
振り返り
デスクトップ
アプリ(WPF)
Windowsストア
アプリ
PC向け
Webアプリ
ViewModelと
Model
(ポータブル
クラスライブラリ)
ViewModelと
Model
HTML/CSS
XAML C#/VisualBasic
JavaScript
クライアント側 サーバー側
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
グレープシティのソリューション
ウ ィ ジ モ
 jQuery UIベースのUIウィジェット集
 40種類以上のウィジェットであらゆるUIをカバー
 20種類以上のテーマが用意され、ThemeRoller サポート
 ブラウザはjQuery 1.xとjQuery Mobileのサポートに準拠
 日本語のドキュメント、日本語による技術サポートを提供
 GNU GPLv3と商用ライセンスのデュアルライセンス
 Knockout統合ライブラリを収録し、
Knockoutとシームレスに統合
ウ ィ ジ モ
ウ ェ ブ グ イ Windowsフォームと同様の開発手法で、
モダンなWebアプリを開発する
(シングルページアプリケーション)
ASP.NETベースのフレームワーク
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
ディスプレイモード
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
ディスプレイモード
 ブラウザからやってくるリクエストを見て、
対応するテンプレートファイルの切り替えを
行う機能
デスクトップブラウザから「/Home」へアクセス
→「ViewsHomeIndex.cshtml」が使用される
モバイルブラウザから「/Home」へアクセス
→「ViewsHomeIndex.Mobile.cshtml」が使用される
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
デフォルトで”Mobile”はサポート
 “Mobile”のディスプレイモードは
デフォルトで入っている
 IsMobileDeviceプロパティがTrueのブラウザは
”Mobile”が使用される
 C:WindowsMicrosoft.NETFramework[.NET version]ConfigBrowsers
 カスタムのディスプレイモードを定義したい場合
は、DisplayModeProviderクラスにモードを追加
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
Demo4
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
グレープシティのソリューション
 アダプティブウィジェット
 モバイル Web アプリケーションと非モバイル Web アプリケーションの
両方で使用できる
 jQuery UI 参照ではなく jQuery Mobile 参照を使用する
 スクリプトでウィジェットを初期化する代わりに、
マークアップで data-role 属性を使用して
ウィジェットを作成する
ウ ィ ジ モ
ウ ェ ブ グ イ
サービスパック1で
モバイル向けページの作成に対応予定
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
まとめ
デスクトップ
アプリ(WPF)
Windowsストア
アプリ
PC向け
Webアプリ
モバイル向け
Webアプリ
ViewModelと
Model
(ポータブル
クラスライブラリ)
ViewModelと
Model
HTML/CSS
XAML C#/VisualBasic
JavaScript
クライアント側 サーバー側
エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku)
まとめ
MVVM
Java
Script
jQuery
Knock
out
ASP.NET
Web API
PCL
.Net技術でこれからも食べていくための技術戦略

More Related Content

What's hot

新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ慎一 古賀
 
Efsta cod2012 master_for_slideshare
Efsta cod2012 master_for_slideshareEfsta cod2012 master_for_slideshare
Efsta cod2012 master_for_slideshareTakahito Sugishita
 
XAML + C#で開発するときの Visual Studio 2013(とBlend)の 便利機能
XAML + C#で開発するときのVisual Studio 2013(とBlend)の便利機能XAML + C#で開発するときのVisual Studio 2013(とBlend)の便利機能
XAML + C#で開発するときの Visual Studio 2013(とBlend)の 便利機能一希 大田
 
PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料Monaca
 
Developers Summit 2013【14-E-3】Windows 8デザインガイド
Developers Summit 2013【14-E-3】Windows 8デザインガイドDevelopers Summit 2013【14-E-3】Windows 8デザインガイド
Developers Summit 2013【14-E-3】Windows 8デザインガイドYuya Yamaki
 
わんくま名古屋#25(20121201) 「Win8ストア・アプリ WP8アプリ、両面撃破作戦」
わんくま名古屋#25(20121201) 「Win8ストア・アプリ WP8アプリ、両面撃破作戦」わんくま名古屋#25(20121201) 「Win8ストア・アプリ WP8アプリ、両面撃破作戦」
わんくま名古屋#25(20121201) 「Win8ストア・アプリ WP8アプリ、両面撃破作戦」Yasuhiko Yamamoto
 
Empower every App and every Developer in a Mobile-first, Cloud-first World.
Empower every App and every Developer in a Mobile-first, Cloud-first World.Empower every App and every Developer in a Mobile-first, Cloud-first World.
Empower every App and every Developer in a Mobile-first, Cloud-first World.Akira Inoue
 
ついに日本上陸!Windows Phone 7.5 アプリケーション開発
ついに日本上陸!Windows Phone 7.5 アプリケーション開発ついに日本上陸!Windows Phone 7.5 アプリケーション開発
ついに日本上陸!Windows Phone 7.5 アプリケーション開発ShinichiAoyagi
 
【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -
【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -
【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -ShinichiAoyagi
 
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!hmimura_embarcadero
 
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~Akira Inoue
 
Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~
Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~
Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~Osamu Monoe
 
Web App Framework at SwapSkills vol28
Web App Framework at SwapSkills vol28Web App Framework at SwapSkills vol28
Web App Framework at SwapSkills vol28光一 原田
 
Xamarin 101 ~環境構築からビルド・テストまで~
Xamarin 101 ~環境構築からビルド・テストまで~Xamarin 101 ~環境構築からビルド・テストまで~
Xamarin 101 ~環境構築からビルド・テストまで~Masaki Takeda
 
Developers.IO 2016 F-1 セッション資料
Developers.IO 2016 F-1 セッション資料Developers.IO 2016 F-1 セッション資料
Developers.IO 2016 F-1 セッション資料Shinichi Hirauchi
 
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイルVisual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイルAkira Inoue
 
ソフト屋が挑戦した電子工作 〜力ずくの10か月〜
ソフト屋が挑戦した電子工作 〜力ずくの10か月〜ソフト屋が挑戦した電子工作 〜力ずくの10か月〜
ソフト屋が挑戦した電子工作 〜力ずくの10か月〜Shinichi Hirauchi
 
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッション
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッションC# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッション
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッションYoshito Tabuchi
 

What's hot (20)

新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ
 
Visual Studio + xamarin で始めるモバイル アプリ開発
Visual Studio + xamarin で始めるモバイル アプリ開発Visual Studio + xamarin で始めるモバイル アプリ開発
Visual Studio + xamarin で始めるモバイル アプリ開発
 
Efsta cod2012 master_for_slideshare
Efsta cod2012 master_for_slideshareEfsta cod2012 master_for_slideshare
Efsta cod2012 master_for_slideshare
 
XAML + C#で開発するときの Visual Studio 2013(とBlend)の 便利機能
XAML + C#で開発するときのVisual Studio 2013(とBlend)の便利機能XAML + C#で開発するときのVisual Studio 2013(とBlend)の便利機能
XAML + C#で開発するときの Visual Studio 2013(とBlend)の 便利機能
 
MVVM入門
MVVM入門MVVM入門
MVVM入門
 
PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料
 
Developers Summit 2013【14-E-3】Windows 8デザインガイド
Developers Summit 2013【14-E-3】Windows 8デザインガイドDevelopers Summit 2013【14-E-3】Windows 8デザインガイド
Developers Summit 2013【14-E-3】Windows 8デザインガイド
 
わんくま名古屋#25(20121201) 「Win8ストア・アプリ WP8アプリ、両面撃破作戦」
わんくま名古屋#25(20121201) 「Win8ストア・アプリ WP8アプリ、両面撃破作戦」わんくま名古屋#25(20121201) 「Win8ストア・アプリ WP8アプリ、両面撃破作戦」
わんくま名古屋#25(20121201) 「Win8ストア・アプリ WP8アプリ、両面撃破作戦」
 
Empower every App and every Developer in a Mobile-first, Cloud-first World.
Empower every App and every Developer in a Mobile-first, Cloud-first World.Empower every App and every Developer in a Mobile-first, Cloud-first World.
Empower every App and every Developer in a Mobile-first, Cloud-first World.
 
ついに日本上陸!Windows Phone 7.5 アプリケーション開発
ついに日本上陸!Windows Phone 7.5 アプリケーション開発ついに日本上陸!Windows Phone 7.5 アプリケーション開発
ついに日本上陸!Windows Phone 7.5 アプリケーション開発
 
【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -
【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -
【18-C-5】C# で iOS/Androidアプリ開発 - Visual Studio 2015 + Xamarin + MVVMCross -
 
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!
 
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
 
Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~
Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~
Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~
 
Web App Framework at SwapSkills vol28
Web App Framework at SwapSkills vol28Web App Framework at SwapSkills vol28
Web App Framework at SwapSkills vol28
 
Xamarin 101 ~環境構築からビルド・テストまで~
Xamarin 101 ~環境構築からビルド・テストまで~Xamarin 101 ~環境構築からビルド・テストまで~
Xamarin 101 ~環境構築からビルド・テストまで~
 
Developers.IO 2016 F-1 セッション資料
Developers.IO 2016 F-1 セッション資料Developers.IO 2016 F-1 セッション資料
Developers.IO 2016 F-1 セッション資料
 
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイルVisual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
 
ソフト屋が挑戦した電子工作 〜力ずくの10か月〜
ソフト屋が挑戦した電子工作 〜力ずくの10か月〜ソフト屋が挑戦した電子工作 〜力ずくの10か月〜
ソフト屋が挑戦した電子工作 〜力ずくの10か月〜
 
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッション
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッションC# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッション
C# を使い倒す!クロス プラットフォーム アプリ開発とクラウド連携の新潮流 - Xamarin セッション
 

Viewers also liked

業務アプリケーション開発を支える.NET技術 #ngtnet
業務アプリケーション開発を支える.NET技術 #ngtnet業務アプリケーション開発を支える.NET技術 #ngtnet
業務アプリケーション開発を支える.NET技術 #ngtnet将 高野
 
大人の基礎C#【Niigat.NET 2015-10】
大人の基礎C#【Niigat.NET 2015-10】大人の基礎C#【Niigat.NET 2015-10】
大人の基礎C#【Niigat.NET 2015-10】Mitsuhito Ishino
 
Angular jsとbootstrapでサクッと作るwebアプリ@html5勉強会 名古屋#2
Angular jsとbootstrapでサクッと作るwebアプリ@html5勉強会 名古屋#2Angular jsとbootstrapでサクッと作るwebアプリ@html5勉強会 名古屋#2
Angular jsとbootstrapでサクッと作るwebアプリ@html5勉強会 名古屋#2Takuya Ueda
 
フォーガンシーが歩んだ道
フォーガンシーが歩んだ道フォーガンシーが歩んだ道
フォーガンシーが歩んだ道フォーガンシー
 
はじめてのASP.NET MVC5
はじめてのASP.NET MVC5はじめてのASP.NET MVC5
はじめてのASP.NET MVC5Tomo Mizoe
 

Viewers also liked (7)

業務アプリケーション開発を支える.NET技術 #ngtnet
業務アプリケーション開発を支える.NET技術 #ngtnet業務アプリケーション開発を支える.NET技術 #ngtnet
業務アプリケーション開発を支える.NET技術 #ngtnet
 
大人の基礎C#【Niigat.NET 2015-10】
大人の基礎C#【Niigat.NET 2015-10】大人の基礎C#【Niigat.NET 2015-10】
大人の基礎C#【Niigat.NET 2015-10】
 
さあ、始めましょう―Call to Action―
さあ、始めましょう―Call to Action―さあ、始めましょう―Call to Action―
さあ、始めましょう―Call to Action―
 
デスクトップアプリを『一歩前へ』進める方法
デスクトップアプリを『一歩前へ』進める方法デスクトップアプリを『一歩前へ』進める方法
デスクトップアプリを『一歩前へ』進める方法
 
Angular jsとbootstrapでサクッと作るwebアプリ@html5勉強会 名古屋#2
Angular jsとbootstrapでサクッと作るwebアプリ@html5勉強会 名古屋#2Angular jsとbootstrapでサクッと作るwebアプリ@html5勉強会 名古屋#2
Angular jsとbootstrapでサクッと作るwebアプリ@html5勉強会 名古屋#2
 
フォーガンシーが歩んだ道
フォーガンシーが歩んだ道フォーガンシーが歩んだ道
フォーガンシーが歩んだ道
 
はじめてのASP.NET MVC5
はじめてのASP.NET MVC5はじめてのASP.NET MVC5
はじめてのASP.NET MVC5
 

Similar to .Net技術でこれからも食べていくための技術戦略

.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指してAkira Inoue
 
わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)
わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)
わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)Yasuhiko Yamamoto
 
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線Akira Inoue
 
【17-D-6】.NETアセンブリの宿命
【17-D-6】.NETアセンブリの宿命【17-D-6】.NETアセンブリの宿命
【17-D-6】.NETアセンブリの宿命Developers Summit
 
2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~Takeshi Shinmura
 
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用de:code 2017
 
【16-D-4】3分ではじめるスマホアプリのビジュアル開発
【16-D-4】3分ではじめるスマホアプリのビジュアル開発【16-D-4】3分ではじめるスマホアプリのビジュアル開発
【16-D-4】3分ではじめるスマホアプリのビジュアル開発hmimura_embarcadero
 
.NET Conf 2017 Japan Keynote ".NET Everywhere!"
.NET Conf 2017 Japan Keynote ".NET Everywhere!".NET Conf 2017 Japan Keynote ".NET Everywhere!"
.NET Conf 2017 Japan Keynote ".NET Everywhere!"Akira Inoue
 
わんくま名古屋#36 (20150725) Windows 10 ユニバーサル Windows アプリ開発入門
わんくま名古屋#36 (20150725) Windows 10 ユニバーサル Windows アプリ開発入門わんくま名古屋#36 (20150725) Windows 10 ユニバーサル Windows アプリ開発入門
わんくま名古屋#36 (20150725) Windows 10 ユニバーサル Windows アプリ開発入門Yasuhiko Yamamoto
 
C#の強み、或いは何故PHPから乗り換えるのか
C#の強み、或いは何故PHPから乗り換えるのかC#の強み、或いは何故PHPから乗り換えるのか
C#の強み、或いは何故PHPから乗り換えるのかYoshifumi Kawai
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法Yoshito Tabuchi
 
Asp.net core mvc の core な話
Asp.net core mvc の core な話Asp.net core mvc の core な話
Asp.net core mvc の core な話Masuda Tomoaki
 
マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後Akira Inoue
 
CLR/H 第 79 回勉強会での LT
CLR/H 第 79 回勉強会での LTCLR/H 第 79 回勉強会での LT
CLR/H 第 79 回勉強会での LTShin-ya Koga
 
Windowsストア[DB]アプリ入門
Windowsストア[DB]アプリ入門Windowsストア[DB]アプリ入門
Windowsストア[DB]アプリ入門Akira Hatsune
 
Metroアプリケーションのwin8/wp7の効率的ソース運用を考える
Metroアプリケーションのwin8/wp7の効率的ソース運用を考えるMetroアプリケーションのwin8/wp7の効率的ソース運用を考える
Metroアプリケーションのwin8/wp7の効率的ソース運用を考えるTakahito Sugishita
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#Yuta Matsumura
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法Yoshito Tabuchi
 

Similar to .Net技術でこれからも食べていくための技術戦略 (20)

[Japan Tech summit 2017] APP 001
[Japan Tech summit 2017] APP 001[Japan Tech summit 2017] APP 001
[Japan Tech summit 2017] APP 001
 
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
 
わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)
わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)
わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編)
 
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
 
【17-D-6】.NETアセンブリの宿命
【17-D-6】.NETアセンブリの宿命【17-D-6】.NETアセンブリの宿命
【17-D-6】.NETアセンブリの宿命
 
2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~
 
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
 
【16-D-4】3分ではじめるスマホアプリのビジュアル開発
【16-D-4】3分ではじめるスマホアプリのビジュアル開発【16-D-4】3分ではじめるスマホアプリのビジュアル開発
【16-D-4】3分ではじめるスマホアプリのビジュアル開発
 
Developer summit codeer
Developer summit codeerDeveloper summit codeer
Developer summit codeer
 
.NET Conf 2017 Japan Keynote ".NET Everywhere!"
.NET Conf 2017 Japan Keynote ".NET Everywhere!".NET Conf 2017 Japan Keynote ".NET Everywhere!"
.NET Conf 2017 Japan Keynote ".NET Everywhere!"
 
わんくま名古屋#36 (20150725) Windows 10 ユニバーサル Windows アプリ開発入門
わんくま名古屋#36 (20150725) Windows 10 ユニバーサル Windows アプリ開発入門わんくま名古屋#36 (20150725) Windows 10 ユニバーサル Windows アプリ開発入門
わんくま名古屋#36 (20150725) Windows 10 ユニバーサル Windows アプリ開発入門
 
C#の強み、或いは何故PHPから乗り換えるのか
C#の強み、或いは何故PHPから乗り換えるのかC#の強み、或いは何故PHPから乗り換えるのか
C#の強み、或いは何故PHPから乗り換えるのか
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法
 
Asp.net core mvc の core な話
Asp.net core mvc の core な話Asp.net core mvc の core な話
Asp.net core mvc の core な話
 
マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後
 
CLR/H 第 79 回勉強会での LT
CLR/H 第 79 回勉強会での LTCLR/H 第 79 回勉強会での LT
CLR/H 第 79 回勉強会での LT
 
Windowsストア[DB]アプリ入門
Windowsストア[DB]アプリ入門Windowsストア[DB]アプリ入門
Windowsストア[DB]アプリ入門
 
Metroアプリケーションのwin8/wp7の効率的ソース運用を考える
Metroアプリケーションのwin8/wp7の効率的ソース運用を考えるMetroアプリケーションのwin8/wp7の効率的ソース運用を考える
Metroアプリケーションのwin8/wp7の効率的ソース運用を考える
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法
 

More from Yuya Yamaki

Basic言語でiOSアプリを作る
Basic言語でiOSアプリを作るBasic言語でiOSアプリを作る
Basic言語でiOSアプリを作るYuya Yamaki
 
Xamarinはじめました
XamarinはじめましたXamarinはじめました
XamarinはじめましたYuya Yamaki
 
TypeScript入門してみた
TypeScript入門してみたTypeScript入門してみた
TypeScript入門してみたYuya Yamaki
 
Windowsの画面スケーリングを きちんと理解しよう
Windowsの画面スケーリングをきちんと理解しようWindowsの画面スケーリングをきちんと理解しよう
Windowsの画面スケーリングを きちんと理解しようYuya Yamaki
 
今さらWPF? いいえ、今こそWPF!
今さらWPF?いいえ、今こそWPF!今さらWPF?いいえ、今こそWPF!
今さらWPF? いいえ、今こそWPF!Yuya Yamaki
 
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革Yuya Yamaki
 
デスクトップアプリ開発者が押さえておくべき Windows 8時代の変革
デスクトップアプリ開発者が押さえておくべきWindows 8時代の変革デスクトップアプリ開発者が押さえておくべきWindows 8時代の変革
デスクトップアプリ開発者が押さえておくべき Windows 8時代の変革Yuya Yamaki
 
Windows 8時代のUXを支える非同期プログラミング
Windows 8時代のUXを支える非同期プログラミングWindows 8時代のUXを支える非同期プログラミング
Windows 8時代のUXを支える非同期プログラミングYuya Yamaki
 
どうなる?Windows 8時代の業務アプリ開発
どうなる?Windows 8時代の業務アプリ開発どうなる?Windows 8時代の業務アプリ開発
どうなる?Windows 8時代の業務アプリ開発Yuya Yamaki
 
Metroスタイルで花開くか? XAMLベースのUIフレームワーク
Metroスタイルで花開くか?XAMLベースのUIフレームワークMetroスタイルで花開くか?XAMLベースのUIフレームワーク
Metroスタイルで花開くか? XAMLベースのUIフレームワークYuya Yamaki
 
WPF/Silverlight視点で視る MetroスタイルのXAML
WPF/Silverlight視点で視るMetroスタイルのXAMLWPF/Silverlight視点で視るMetroスタイルのXAML
WPF/Silverlight視点で視る MetroスタイルのXAMLYuya Yamaki
 
77回スピーカーを経験して分かったこと」共有します
77回スピーカーを経験して分かったこと」共有します77回スピーカーを経験して分かったこと」共有します
77回スピーカーを経験して分かったこと」共有しますYuya Yamaki
 
半透明は飾りです 偉い人にはそれがわからんのですよ
半透明は飾りです偉い人にはそれがわからんのですよ半透明は飾りです偉い人にはそれがわからんのですよ
半透明は飾りです 偉い人にはそれがわからんのですよYuya Yamaki
 
60分でわかる!SilverlightとWPFの入力チェック
60分でわかる!SilverlightとWPFの入力チェック60分でわかる!SilverlightとWPFの入力チェック
60分でわかる!SilverlightとWPFの入力チェックYuya Yamaki
 
Visual Studio 2010でWPF/Silverlightをはじめる5つの理由~業務アプリ開発編~
Visual Studio 2010でWPF/Silverlightをはじめる5つの理由~業務アプリ開発編~Visual Studio 2010でWPF/Silverlightをはじめる5つの理由~業務アプリ開発編~
Visual Studio 2010でWPF/Silverlightをはじめる5つの理由~業務アプリ開発編~Yuya Yamaki
 
Wpf 4とSilverlight 4、これから業務アプリを開発するならどっち?
Wpf 4とSilverlight 4、これから業務アプリを開発するならどっち?Wpf 4とSilverlight 4、これから業務アプリを開発するならどっち?
Wpf 4とSilverlight 4、これから業務アプリを開発するならどっち?Yuya Yamaki
 
Silverlight Line-Of-Business Applications
Silverlight Line-Of-Business ApplicationsSilverlight Line-Of-Business Applications
Silverlight Line-Of-Business ApplicationsYuya Yamaki
 
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーションYuya Yamaki
 

More from Yuya Yamaki (18)

Basic言語でiOSアプリを作る
Basic言語でiOSアプリを作るBasic言語でiOSアプリを作る
Basic言語でiOSアプリを作る
 
Xamarinはじめました
XamarinはじめましたXamarinはじめました
Xamarinはじめました
 
TypeScript入門してみた
TypeScript入門してみたTypeScript入門してみた
TypeScript入門してみた
 
Windowsの画面スケーリングを きちんと理解しよう
Windowsの画面スケーリングをきちんと理解しようWindowsの画面スケーリングをきちんと理解しよう
Windowsの画面スケーリングを きちんと理解しよう
 
今さらWPF? いいえ、今こそWPF!
今さらWPF?いいえ、今こそWPF!今さらWPF?いいえ、今こそWPF!
今さらWPF? いいえ、今こそWPF!
 
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
デスクトップアプリ開発者が押さえておくべきWindows 8 時代の変革
 
デスクトップアプリ開発者が押さえておくべき Windows 8時代の変革
デスクトップアプリ開発者が押さえておくべきWindows 8時代の変革デスクトップアプリ開発者が押さえておくべきWindows 8時代の変革
デスクトップアプリ開発者が押さえておくべき Windows 8時代の変革
 
Windows 8時代のUXを支える非同期プログラミング
Windows 8時代のUXを支える非同期プログラミングWindows 8時代のUXを支える非同期プログラミング
Windows 8時代のUXを支える非同期プログラミング
 
どうなる?Windows 8時代の業務アプリ開発
どうなる?Windows 8時代の業務アプリ開発どうなる?Windows 8時代の業務アプリ開発
どうなる?Windows 8時代の業務アプリ開発
 
Metroスタイルで花開くか? XAMLベースのUIフレームワーク
Metroスタイルで花開くか?XAMLベースのUIフレームワークMetroスタイルで花開くか?XAMLベースのUIフレームワーク
Metroスタイルで花開くか? XAMLベースのUIフレームワーク
 
WPF/Silverlight視点で視る MetroスタイルのXAML
WPF/Silverlight視点で視るMetroスタイルのXAMLWPF/Silverlight視点で視るMetroスタイルのXAML
WPF/Silverlight視点で視る MetroスタイルのXAML
 
77回スピーカーを経験して分かったこと」共有します
77回スピーカーを経験して分かったこと」共有します77回スピーカーを経験して分かったこと」共有します
77回スピーカーを経験して分かったこと」共有します
 
半透明は飾りです 偉い人にはそれがわからんのですよ
半透明は飾りです偉い人にはそれがわからんのですよ半透明は飾りです偉い人にはそれがわからんのですよ
半透明は飾りです 偉い人にはそれがわからんのですよ
 
60分でわかる!SilverlightとWPFの入力チェック
60分でわかる!SilverlightとWPFの入力チェック60分でわかる!SilverlightとWPFの入力チェック
60分でわかる!SilverlightとWPFの入力チェック
 
Visual Studio 2010でWPF/Silverlightをはじめる5つの理由~業務アプリ開発編~
Visual Studio 2010でWPF/Silverlightをはじめる5つの理由~業務アプリ開発編~Visual Studio 2010でWPF/Silverlightをはじめる5つの理由~業務アプリ開発編~
Visual Studio 2010でWPF/Silverlightをはじめる5つの理由~業務アプリ開発編~
 
Wpf 4とSilverlight 4、これから業務アプリを開発するならどっち?
Wpf 4とSilverlight 4、これから業務アプリを開発するならどっち?Wpf 4とSilverlight 4、これから業務アプリを開発するならどっち?
Wpf 4とSilverlight 4、これから業務アプリを開発するならどっち?
 
Silverlight Line-Of-Business Applications
Silverlight Line-Of-Business ApplicationsSilverlight Line-Of-Business Applications
Silverlight Line-Of-Business Applications
 
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション
【13 C 2】デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション
 

Recently uploaded

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 

Recently uploaded (7)

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 

.Net技術でこれからも食べていくための技術戦略

  • 2. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) ビジネスアプリケーション向け.NETテクノロジガイド  Microsoft .NET ホーム http://www.microsoft.com/ja-jp/net/
  • 3. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) Established(従来型)とEmerging(次世代型)  Establishedアプリケーションパターン  クライアント/サーバー方式などのテクノロジパターンを使用して 開発されたアプリケーションや、デスクトップブラウザーに 最適化された Webアプリケーションの開発に用いる技術パターン。 基盤アプリケーションとして機能するもので、既存のビジネス プロセスに大きな比重を置いて設計されています。  Emergingアプリケーションパターン  マルチデバイスやクラウドといった新しいテクノロジで実現される アプリケーション。アプリケーションをエンドユーザー中心に 拡張することで、Establishedパターンを補完します。
  • 4. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) 『英和辞書 - goo辞書』より  established【形】 1. 〈秩序・慣習などが〉確立した[された], 既定 の;(慣習的に)認められた;立証済みの;〈法 律などが〉制定された 2. 〈地位・人が〉常設の, 常勤の. 3. 〈宗教・教会が〉国教の. 4. 〈人・動植物が〉(新しい土地に)定住[定着] した.  emerging【形】  発展段階の;新出現の
  • 5. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) .NETエンジニアの状況は?
  • 6. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) .NET開発者中心 読者調査レポート 0% 10% 20% 30% 40% 50% 60% 70% Silverlight ASP.NET MVC ASP.NET Webフォーム WPF Windowsフォーム 2011年9月 2012年9月
  • 7. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) EmergingとEstablishedの関係 モダンビジネスアプリケーション 従来型のアプリケーション パターン
  • 8. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) モダンな業務アプリへ  現行の開発技術はestablishedパターンに深く依存して いるため、モダンなアプリに必要とされるemergingパ ターンとの統合は簡単ではありません。  マイクロソフトプラットフォームは既存アプリケーショ ンに基づいて構築されており、emergingアプリケー ションパターンへの拡張を可能にします。また、複数の 開発テクノロジがサポートされるため、開発者のスキル や、既存アプリケーションで使用されているテクノロジ に応じ、最適な方法を選ぶことができます。
  • 9. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) 本日ご紹介する技術トピック ポータブルクラスライブラリ ASP.NET Web API シングルページアプリケーション ディスプレイモード
  • 10. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) ポータブルクラスライブラリ
  • 11. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) .NET Framework Silverlight Windows Phone Windows ストア アプリ用 .NET Xbox 360 Xamarin.Android Xamarin.iOS ポータブルクラスライブラリ  上記のプラットフォームで参照できるマネージアセンブリ  コードを最大限に再利用し、必要なプロジェクトの数を削減  同じコードベースを共有するマルチターゲットアプリで効果的
  • 12. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) サポートされている機能 機能 .NET Framework Windows ストア Silverlight Windows Phone Xamarin コア ✅ ✅ ✅ ✅ ✅ LINQ ✅ ✅ ✅ ✅ ✅ IQueryable ✅ ✅ ✅ 7.5以上 ✅ Dynamic キーワード 4.5 のみ ✅ ✅ ✅ MEF (Managed Extensibility Framework) ✅ ✅ ✅ ✅ Network Class Library (NCL) ✅ ✅ ✅ ✅ ✅ シリアル化 ✅ ✅ ✅ ✅ ✅ WCF ✅ ✅ ✅ ✅ ✅ Model-View-View Model (MVVM) 4.5 のみ ✅ ✅ ✅ ✅ データ アノテーション 4.0.3以上 ✅ ✅ ✅ XLINQ 4.0.3以上 ✅ ✅ ✅ ✅ System.Numerics ✅ ✅ ✅ ✅
  • 13. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) Demo1 MSDNライブラリ Model-View-View Model を利用した汎用性のあるクラス ライブラリの使用
  • 14. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) MVVMのイメージ図 View ViewModel Model
  • 15. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) ASP.NET Web API
  • 16. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) ASP.NET Web API  RESTfulなサービスを提供するのに適した HTTPサービス構築用のフレームワーク  HTTPメソッドの「GET」「POST」「DELETE」「PUT」 を使ってリソースを操作  リソースとは「Web上に存在する名前を持った ありとあらゆる情報」  リソースはそれぞれ固有のURIを持つ メソッド 役割 GET リソースの取得 POST リソースの新規作成 PUT 既存のリソースのアップデート DELETE リソースの削除
  • 17. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) Demo2
  • 18. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) Microsoft ASP.NET Web API 2.1 Client
  • 19. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) 振り返り デスクトップ アプリ(WPF) Windowsストア アプリ ViewModelと Model (ポータブル クラスライブラリ) XAML C#/VisualBasic クライアント側 サーバー側
  • 20. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) デスクトップアプリ (WPF) Windowsストアアプリ 振り返り
  • 21. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) グレープシティのソリューション
  • 24. MultTouch for Windows Forms 1.0J
  • 26. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) シングルページアプリケーション
  • 27. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) シングルページアプリケーション(SPA)  クライアントサイドのアーキテクチャに重点をおいた 設計アプローチ  その名の通り、 1つのページで完全に動作する Webアプリ  ページ全体の更新や再読み込みなし  アプリケーションプログラムのほとんどは クライアントサイドで実行され、Webブラウザーと サーバーのやり取りは必要なデータの交換のみ
  • 28. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) One ASP.NET
  • 29. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) Single Page Application テンプレート
  • 30. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) ASP.NETシングルページアプリケーション構成 JSON/XML クライアント サーバー Knockout
  • 31. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) Knockout UIに必要なのは ViewModel (シンプルなモデルオブジェ クト) とデータバインドだけ。ややこしいDOM操作なし で、動的なインターフェイスを作ることができます。 ViewModel のプロパティが変更されると、自動的にUI の関連付けられた部分を更新します。 データの結合や変換を実現するためのデータ間の関係 チェーンを暗黙的に設定します。 幾重にもネストされたテンプレートも、バインドされた ViewModel を用いて素早くUIを生成します。 宣言型バインディング UIの自動更新 依存関係のトラッキング UIテンプレート オープンソースのJavaScript MVVMライブラリ Knockout.jsの概要 // Speaker Deck https://speakerdeck.com/mayuki/knockout-dot-jsfalsegai-yao
  • 32. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) Knockoutjs.com - Hello World Example - jsFiddle
  • 33. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) Demo3
  • 34. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) 振り返り デスクトップ アプリ(WPF) Windowsストア アプリ PC向け Webアプリ ViewModelと Model (ポータブル クラスライブラリ) ViewModelと Model HTML/CSS XAML C#/VisualBasic JavaScript クライアント側 サーバー側
  • 35. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) グレープシティのソリューション
  • 36. ウ ィ ジ
  • 37.  jQuery UIベースのUIウィジェット集  40種類以上のウィジェットであらゆるUIをカバー  20種類以上のテーマが用意され、ThemeRoller サポート  ブラウザはjQuery 1.xとjQuery Mobileのサポートに準拠  日本語のドキュメント、日本語による技術サポートを提供  GNU GPLv3と商用ライセンスのデュアルライセンス  Knockout統合ライブラリを収録し、 Knockoutとシームレスに統合 ウ ィ ジ モ
  • 38. ウ ェ ブ グ イ Windowsフォームと同様の開発手法で、 モダンなWebアプリを開発する (シングルページアプリケーション) ASP.NETベースのフレームワーク
  • 39. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) ディスプレイモード
  • 40. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) ディスプレイモード  ブラウザからやってくるリクエストを見て、 対応するテンプレートファイルの切り替えを 行う機能 デスクトップブラウザから「/Home」へアクセス →「ViewsHomeIndex.cshtml」が使用される モバイルブラウザから「/Home」へアクセス →「ViewsHomeIndex.Mobile.cshtml」が使用される
  • 41. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) デフォルトで”Mobile”はサポート  “Mobile”のディスプレイモードは デフォルトで入っている  IsMobileDeviceプロパティがTrueのブラウザは ”Mobile”が使用される  C:WindowsMicrosoft.NETFramework[.NET version]ConfigBrowsers  カスタムのディスプレイモードを定義したい場合 は、DisplayModeProviderクラスにモードを追加
  • 42. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) Demo4
  • 43. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) グレープシティのソリューション
  • 44.  アダプティブウィジェット  モバイル Web アプリケーションと非モバイル Web アプリケーションの 両方で使用できる  jQuery UI 参照ではなく jQuery Mobile 参照を使用する  スクリプトでウィジェットを初期化する代わりに、 マークアップで data-role 属性を使用して ウィジェットを作成する ウ ィ ジ モ
  • 45. ウ ェ ブ グ イ サービスパック1で モバイル向けページの作成に対応予定
  • 46. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) まとめ デスクトップ アプリ(WPF) Windowsストア アプリ PC向け Webアプリ モバイル向け Webアプリ ViewModelと Model (ポータブル クラスライブラリ) ViewModelと Model HTML/CSS XAML C#/VisualBasic JavaScript クライアント側 サーバー側
  • 47. エフスタ!!SENDAI 2 (MVP Community Camp 2014 – Tohoku) まとめ MVVM Java Script jQuery Knock out ASP.NET Web API PCL