SlideShare a Scribd company logo
~ .NET の過去、現在、そして未来 ~
井上 章 (いのうえ あきら) @chack411
マイクロソフト コーポレーション
グローバル ブラックベルト
Azure Cloud Native テクニカル スペシャリスト
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
.NET Application Models ~ .NET Core 3.1 (LTS)
.NET Framework .NET Core Xamarin
アプリ
モデル
ベース
ライブラリ
Win Forms
WPF
◼ .NET Core / Xamarin / .NET Framework アプリケーション モデルをサポート
◼ 統一プラットフォームへ向けた .NET Core の進化
◼ シングル SDK, 一つの BCL, 統一されたツール チェーン
◼ クロスプラットフォーム ネイティブ UI
◼ クロスプラットフォーム Web UI
◼ Cloud Native への投資
◼ パフォーマンス、サイズ、診断、Azure サービスの継続的な改善
◼ .NET 5 に含まれないアプリケーション モデル
◼ ASP.NET Web Forms
◼ WCF (Windows Communication Foundation)
◼ WF (Windows Workflow Foundation)
– .NET 5 to 6 "wave"
.NET Framework
Mono / Xamarin
.NET Core
.NET
One .NET vision
.NET has the best of breed solutions for all modern workloads
.NET リリース スケジュール
• .NET 5.0 リリース : 2020 年 11 月
• 毎年 11 月にメジャー リリース
• LTS は奇数年リリース
• 予定リリース以外に必要であればマイナーリリースあり
Dec 2019
.NET Core 3.1
LTS
Nov 2020
.NET 5.0
Nov 2021
.NET 6.0
LTS
Nov 2022
.NET 7.0
Nov 2023
.NET 8.0
LTS
クロス プラットフォーム, ネイティブ UI
シングル プロジェクト, シングル コードベース
モバイルやデスクトップなどマルチデバイスへのデプロイ
Xamarin.Forms の進化
2021 年予定の .NET 6 preview をターゲット
Build beautiful, native UI for any device
.NET Multi-platform App UI (.NET MAUI)
.NET MAUI
.NET Platform
github.com/dotnet/maui
WinUI 3 Preview 3
http://aka.ms/winui
◼ WinUI – The modern native UI platform of Windows
◼ Windows アプリのためのモダンコントロールとスタイルの UI レイヤー
◼ WinUI 3 は UWP と Win32 アプリをサポート (WinUI 2 は UWP のみ)
◼ Native C/C++, .NET 5, WebView2, Fluent Design Controls 等に対応
.NET 言語
Powerful, flexible, for any kind of .NET app
タイプセーフなオブジェクト指向プログラミング言語
最新の C# 9 が .NET 5 で利用可能
Easy to get started, approachable
自然言語に近く読みやすい構文のプログラミング言語 (VB.NET)
.NET 5 では一部のアプリタイプで使用可能 (今後のアップデートは予定なし)
Productive functional programming and analytics
.NET の関数型プログラミング言語
最新の F# 5 が .NET 5 で利用可能
BCL / Runtime
ASP.NET Core 3.1 / 5.0
◼
◼
◼
◼
◼
◼
◼
◼
◼
◼
◼
ASP.NET Core Blazor
https://blazor.net
Razor Components
.NET
WebAssembly
GitHub リポジトリから Azure へフルスタック Web アプリ環境を自動的に構築してデプロイ
Azure Functions バックエンドと共に Angular, React, Vue などを使用した SPA アプリの構築
GitHub
Azure
Azure Static Web Apps (Preview)
◼ JAM スタックで構成された Web アプリの Azure PaaS 移行
◼ 指定した GitHub リポジトリに対して
GitHub Actions ワークフローを自動生成
◼ Azure Functions による API をサポート
◼ 静的コンテンツの Web ホスティングと
グローバル分散
◼ 各種認証プロバイダーの統合
◼ カスタム ドメイン、無料 SSL 証明書
◼ etc …
.NET 5 の Cloud Native への投資
 REST API’s
 Open API, API REPL, client generation, publish to APIM
 gRPC contract-based API’s
 Generate client & server from proto file, world class performance
 Faster cross-platform development with WSL and Linux
 Smaller microservices, single file apps, top-level C# programs
 High-performance reverse proxy (YARP)
 Opinionated .NET microservices & orchestration tools (Tye)
The Twelve-Factor App
The Twelve Factor App is a set of best practices that
guide you to build a great Cloud Native application.
クラウド ネイティブ アプリのベストプラクティス (方法論) : https://12factor.net/ja/
Linux Container と Windows Container
Hardware
VM VM
Application
Processes
Container Container Container
OS
仮想マシン = ハードウェア仮想化
VM
Linux Containers = OS 仮想化
Kernel
Container Container Container
Container Container Container
Hyper-V
Kernel Kernel Kernel
Hyper-V Containers = Hyper-V による分離
Windows Server Containers = プロセス分離
Kernel
docker run -it --isolation=hyperv <image> …
docker run -it --isolation=process <image> …
Azure App Service & Windows Containers (GA)
Windows Containers によるモノリシック / N-Tier
アプリの Azure App Service 移行が可能
AKS Linux & Windows ノードプール
• 複数のノード プールを使用して、AKS クラスター
で Windows と Linux の VM を混在させること
が可能
• ノード セレクタを使用して、Windows と Linux
が混在するワークロードをスケジュール可能
API server
Controller
Manager
Scheduler
etcd
Store
Cloud
Controller
Self-managed master node(s)
Customer VMs – Nodepool 1
App/
workload
definition
User
Schedule pods over
private tunnel
Kubernetes
API endpoint
Azure managed control plane
Docker
Pods
Docker
Pods
kubelet kube-proxy
VM
Docker
Pods
Docker
Pods
kubelet kube-proxy
VM
Customer VMs – Nodepool 2
Schedule pods over
private tunnel
Docker
Pods
Docker
Pods
kubelet kube-proxy
VM
Docker
Pods
Docker
Pods
kubelet kube-proxy
VM
.NET x / .NET Core
.NET Framework
.NET Core / .NET 5 と .NET Framework の選択
.NET 5 & 6 ~ すべてのアプリのための統一プラットフォーム
.NET 5 & 6(Nov 2021)
INFRASTRUCTURE
.NET Standard
DESKTOP
WPF/Win Forms
UWP
WEB
ASP.NET
MOBILE
Xamarin
GAMING
Unity
CLOUD
Azure
IoT
ARM32
ARM64
AI
ML.NET
.NET Apache Spark
© 2018 Microsoft Corporation. All rights reserved.
本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。
© 2021 Microsoft Corporation. All rights reserved.
本情報の内容 (添付文書、リンク先などを含む) は、本資料作成時点のものであり、予告なく変更される場合があります。
本コンテンツの著作権、および本コンテンツ中に出てくる商標権、団体名、ロゴ、製品、サービスなどはそれぞれ、各権利保有者に帰属します。

More Related Content

PDF
【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介
PDF
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
PDF
AbemaTVの動画配信を支えるサーバーサイドシステム
PDF
Node-REDのノード開発容易化ツール Node generator
PDF
Appium 2.0 ではじめるモバイルアプリテスト
PDF
【BS2】.NET 6 最新アップデート
PDF
オープンソースで構築するWebメタバース ~Mozilla Hubsで学ぶUX開発から運用コスト最小化まで #CEDEC2022
PDF
.NET 7におけるBlazorの新機能
【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
AbemaTVの動画配信を支えるサーバーサイドシステム
Node-REDのノード開発容易化ツール Node generator
Appium 2.0 ではじめるモバイルアプリテスト
【BS2】.NET 6 最新アップデート
オープンソースで構築するWebメタバース ~Mozilla Hubsで学ぶUX開発から運用コスト最小化まで #CEDEC2022
.NET 7におけるBlazorの新機能

What's hot (20)

PDF
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
PDF
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
PDF
OSSを活用したIaCの実現
PDF
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
PPTX
20211109 JAWS-UG SRE keynotes
PPTX
GraphQLのsubscriptionで出来ること
PDF
徹底解説 Unity Reflect【概要編 ver2.0】
PDF
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
PDF
vSphere 7 へのアップグレードについて
PDF
Fluentdのお勧めシステム構成パターン
PDF
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
PDF
IDaaS を正しく活用するための認証基盤設計 ~Azure Active Directory の構成パターン詳細~
PDF
[Cloud OnAir] Google Cloud でセキュアにアプリケーションを開発しよう 2019年3月7日 放送
PDF
.NET 最新ロードマップと今押さえておきたい技術要素
PDF
CloudFormation/SAMのススメ
PPTX
Amazon SageMakerでカスタムコンテナを使った学習
PDF
20210925_jazug_azure_what_to_do_first
PDF
OpenID ConnectとAndroidアプリのログインサイクル
PPTX
CloudFront経由でのCORS利用
PDF
単なるキャッシュじゃないよ!?infinispanの紹介
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
OSSを活用したIaCの実現
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
20211109 JAWS-UG SRE keynotes
GraphQLのsubscriptionで出来ること
徹底解説 Unity Reflect【概要編 ver2.0】
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
vSphere 7 へのアップグレードについて
Fluentdのお勧めシステム構成パターン
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
IDaaS を正しく活用するための認証基盤設計 ~Azure Active Directory の構成パターン詳細~
[Cloud OnAir] Google Cloud でセキュアにアプリケーションを開発しよう 2019年3月7日 放送
.NET 最新ロードマップと今押さえておきたい技術要素
CloudFormation/SAMのススメ
Amazon SageMakerでカスタムコンテナを使った学習
20210925_jazug_azure_what_to_do_first
OpenID ConnectとAndroidアプリのログインサイクル
CloudFront経由でのCORS利用
単なるキャッシュじゃないよ!?infinispanの紹介
Ad

Similar to .NET の過去、現在、そして未来 ~ .NET 最新アップデート (20)

PDF
Cloud から IoT まで、なんでもおまかせ ~ .NET 5 正式リリース!
PDF
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
PDF
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
PDF
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
PDF
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
PDF
.NET Conf 2017 Japan Keynote ".NET Everywhere!"
PDF
.NET の今とミライ (.NET Conf 2018 Japan Keynote)
PDF
[Japan Tech summit 2017] APP 001
PDF
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
PPTX
OSC Tokyo/Spring NETMF 170311
PDF
~ Cloud First から Cloud Optimized へ ~ .NET on Cloud が描くモダナイゼーション
PPTX
今から始める、Windows 10&新.NETへの移行戦略
PDF
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
PDF
.NET の過去、現在、そして未来
PDF
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
PDF
Dotnetcore30forwindesktop
PPTX
Desktop app dev strategy for .net core 3.0
PPTX
今から始める、Windows 10&新.NETへの移行戦略
PDF
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜
PDF
.NET の今と今後に思うこと (Tokyo Ver.)
Cloud から IoT まで、なんでもおまかせ ~ .NET 5 正式リリース!
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
.NET Conf 2017 Japan Keynote ".NET Everywhere!"
.NET の今とミライ (.NET Conf 2018 Japan Keynote)
[Japan Tech summit 2017] APP 001
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
OSC Tokyo/Spring NETMF 170311
~ Cloud First から Cloud Optimized へ ~ .NET on Cloud が描くモダナイゼーション
今から始める、Windows 10&新.NETへの移行戦略
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
.NET の過去、現在、そして未来
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
Dotnetcore30forwindesktop
Desktop app dev strategy for .net core 3.0
今から始める、Windows 10&新.NETへの移行戦略
【de:code 2020】 Build 2020 最新情報 〜 Azure & Visual Studio & .NET 〜
.NET の今と今後に思うこと (Tokyo Ver.)
Ad

More from Akira Inoue (20)

PDF
New Features in C# 10/11
PDF
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
PDF
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
PDF
~ Build と言えば やっぱり Developer! ~ Microsoft 開発ツール最新アップデート
PDF
VS Code Live Share ~ 東京と大阪を繋いでみよう!
PDF
.NET の今と今後に思うこと
PDF
VS Code & Flaskで作るCloud NativeアプリとDevOps
PDF
.NET Core と Docker コンテナー、そして Azure を使用したマイクロサービスのアーキテクチャ
PDF
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
PDF
.NET の今 ~ 最新アップデートと 2019 年の展望
PDF
.NET today and tomorrow
PDF
Intelligent Mobile App と Cloud Native が創るアプリ開発の未来 ~ これからの時代のアプリケーション開発ビジョン ~
PDF
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
PDF
Azure と Visual Studio で実践するモダナイゼーションとクラウド ネイティブ アプリケーション開発
PDF
Angular ユーザーなら押さえておきたい! TypeScript と Visual Studio Code の基礎と活用
PDF
Mobile-first, Cloud-first のその先へ ~ Microsoft が描く Web/Mobile の未来
PDF
TypeScript and Visual Studio Code
PDF
Engineers can change the world ~ "世界" で活躍するエンジニアになるために
PDF
Visual Studio Codeで始めるTypeScript
PDF
.NET Core と .NET Framework (続きは de:code 2016 で!)
New Features in C# 10/11
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
~ Build と言えば やっぱり Developer! ~ Microsoft 開発ツール最新アップデート
VS Code Live Share ~ 東京と大阪を繋いでみよう!
.NET の今と今後に思うこと
VS Code & Flaskで作るCloud NativeアプリとDevOps
.NET Core と Docker コンテナー、そして Azure を使用したマイクロサービスのアーキテクチャ
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
.NET の今 ~ 最新アップデートと 2019 年の展望
.NET today and tomorrow
Intelligent Mobile App と Cloud Native が創るアプリ開発の未来 ~ これからの時代のアプリケーション開発ビジョン ~
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
Azure と Visual Studio で実践するモダナイゼーションとクラウド ネイティブ アプリケーション開発
Angular ユーザーなら押さえておきたい! TypeScript と Visual Studio Code の基礎と活用
Mobile-first, Cloud-first のその先へ ~ Microsoft が描く Web/Mobile の未来
TypeScript and Visual Studio Code
Engineers can change the world ~ "世界" で活躍するエンジニアになるために
Visual Studio Codeで始めるTypeScript
.NET Core と .NET Framework (続きは de:code 2016 で!)

.NET の過去、現在、そして未来 ~ .NET 最新アップデート

  • 1. ~ .NET の過去、現在、そして未来 ~ 井上 章 (いのうえ あきら) @chack411 マイクロソフト コーポレーション グローバル ブラックベルト Azure Cloud Native テクニカル スペシャリスト
  • 3. .NET Application Models ~ .NET Core 3.1 (LTS) .NET Framework .NET Core Xamarin アプリ モデル ベース ライブラリ Win Forms WPF
  • 4. ◼ .NET Core / Xamarin / .NET Framework アプリケーション モデルをサポート ◼ 統一プラットフォームへ向けた .NET Core の進化 ◼ シングル SDK, 一つの BCL, 統一されたツール チェーン ◼ クロスプラットフォーム ネイティブ UI ◼ クロスプラットフォーム Web UI ◼ Cloud Native への投資 ◼ パフォーマンス、サイズ、診断、Azure サービスの継続的な改善 ◼ .NET 5 に含まれないアプリケーション モデル ◼ ASP.NET Web Forms ◼ WCF (Windows Communication Foundation) ◼ WF (Windows Workflow Foundation) – .NET 5 to 6 "wave" .NET Framework Mono / Xamarin .NET Core .NET One .NET vision .NET has the best of breed solutions for all modern workloads
  • 5. .NET リリース スケジュール • .NET 5.0 リリース : 2020 年 11 月 • 毎年 11 月にメジャー リリース • LTS は奇数年リリース • 予定リリース以外に必要であればマイナーリリースあり Dec 2019 .NET Core 3.1 LTS Nov 2020 .NET 5.0 Nov 2021 .NET 6.0 LTS Nov 2022 .NET 7.0 Nov 2023 .NET 8.0 LTS
  • 6. クロス プラットフォーム, ネイティブ UI シングル プロジェクト, シングル コードベース モバイルやデスクトップなどマルチデバイスへのデプロイ Xamarin.Forms の進化 2021 年予定の .NET 6 preview をターゲット Build beautiful, native UI for any device .NET Multi-platform App UI (.NET MAUI) .NET MAUI .NET Platform github.com/dotnet/maui
  • 7. WinUI 3 Preview 3 http://aka.ms/winui ◼ WinUI – The modern native UI platform of Windows ◼ Windows アプリのためのモダンコントロールとスタイルの UI レイヤー ◼ WinUI 3 は UWP と Win32 アプリをサポート (WinUI 2 は UWP のみ) ◼ Native C/C++, .NET 5, WebView2, Fluent Design Controls 等に対応
  • 8. .NET 言語 Powerful, flexible, for any kind of .NET app タイプセーフなオブジェクト指向プログラミング言語 最新の C# 9 が .NET 5 で利用可能 Easy to get started, approachable 自然言語に近く読みやすい構文のプログラミング言語 (VB.NET) .NET 5 では一部のアプリタイプで使用可能 (今後のアップデートは予定なし) Productive functional programming and analytics .NET の関数型プログラミング言語 最新の F# 5 が .NET 5 で利用可能
  • 9. BCL / Runtime ASP.NET Core 3.1 / 5.0
  • 11. GitHub リポジトリから Azure へフルスタック Web アプリ環境を自動的に構築してデプロイ Azure Functions バックエンドと共に Angular, React, Vue などを使用した SPA アプリの構築 GitHub Azure Azure Static Web Apps (Preview) ◼ JAM スタックで構成された Web アプリの Azure PaaS 移行 ◼ 指定した GitHub リポジトリに対して GitHub Actions ワークフローを自動生成 ◼ Azure Functions による API をサポート ◼ 静的コンテンツの Web ホスティングと グローバル分散 ◼ 各種認証プロバイダーの統合 ◼ カスタム ドメイン、無料 SSL 証明書 ◼ etc …
  • 12. .NET 5 の Cloud Native への投資  REST API’s  Open API, API REPL, client generation, publish to APIM  gRPC contract-based API’s  Generate client & server from proto file, world class performance  Faster cross-platform development with WSL and Linux  Smaller microservices, single file apps, top-level C# programs  High-performance reverse proxy (YARP)  Opinionated .NET microservices & orchestration tools (Tye)
  • 13. The Twelve-Factor App The Twelve Factor App is a set of best practices that guide you to build a great Cloud Native application. クラウド ネイティブ アプリのベストプラクティス (方法論) : https://12factor.net/ja/
  • 14. Linux Container と Windows Container Hardware VM VM Application Processes Container Container Container OS 仮想マシン = ハードウェア仮想化 VM Linux Containers = OS 仮想化 Kernel Container Container Container Container Container Container Hyper-V Kernel Kernel Kernel Hyper-V Containers = Hyper-V による分離 Windows Server Containers = プロセス分離 Kernel docker run -it --isolation=hyperv <image> … docker run -it --isolation=process <image> …
  • 15. Azure App Service & Windows Containers (GA) Windows Containers によるモノリシック / N-Tier アプリの Azure App Service 移行が可能
  • 16. AKS Linux & Windows ノードプール • 複数のノード プールを使用して、AKS クラスター で Windows と Linux の VM を混在させること が可能 • ノード セレクタを使用して、Windows と Linux が混在するワークロードをスケジュール可能 API server Controller Manager Scheduler etcd Store Cloud Controller Self-managed master node(s) Customer VMs – Nodepool 1 App/ workload definition User Schedule pods over private tunnel Kubernetes API endpoint Azure managed control plane Docker Pods Docker Pods kubelet kube-proxy VM Docker Pods Docker Pods kubelet kube-proxy VM Customer VMs – Nodepool 2 Schedule pods over private tunnel Docker Pods Docker Pods kubelet kube-proxy VM Docker Pods Docker Pods kubelet kube-proxy VM
  • 17. .NET x / .NET Core .NET Framework .NET Core / .NET 5 と .NET Framework の選択
  • 18. .NET 5 & 6 ~ すべてのアプリのための統一プラットフォーム .NET 5 & 6(Nov 2021) INFRASTRUCTURE .NET Standard DESKTOP WPF/Win Forms UWP WEB ASP.NET MOBILE Xamarin GAMING Unity CLOUD Azure IoT ARM32 ARM64 AI ML.NET .NET Apache Spark
  • 19. © 2018 Microsoft Corporation. All rights reserved. 本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。 © 2021 Microsoft Corporation. All rights reserved. 本情報の内容 (添付文書、リンク先などを含む) は、本資料作成時点のものであり、予告なく変更される場合があります。 本コンテンツの著作権、および本コンテンツ中に出てくる商標権、団体名、ロゴ、製品、サービスなどはそれぞれ、各権利保有者に帰属します。