SlideShare a Scribd company logo
~ Linux & Mac OS でも動く!~
オープンソース & クロスプラットフォーム
.NET の歩き方
井上 章 (いのうえ あきら)
http://aka.ms/chack
日本マイクロソフト株式会社
デベロッパー エクスペリエンス & エバンジェリズム統括本部 (DX)
エバンジェリスト
Drew Robbins (ドリュー ロビンス)
http://www.drewby.com
#devsumiE
 Visual Studio と .NET の新しいアプローチを理解する
 .NET Core 5 の Mac OS, Linux 対応を学ぶ
 ASP.NET 5 の概要を知る
セッションのゴール
Session Takeaways
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Microsoft Dev Tools Vision
すべての開発者すべてのアプリ
DevOpsCloud DevelopmentMobile Development
.NET 2015 / ASP.NET 5
Openness
.NET とは?
ライブラリランタイム 言語 ツール
“To move beyond today’s world of stand-alone Web sites to an
Internet of interchangeable components where devices and
services can be assembled into cohesive, user-driven experiences”
Bill Gates on the goal for .NET
Forum 2000
“Web サイトが個々に独立している状態から、交換可能なコンポーネントからなる
インターネットへと移行し、さまざまな デバイスとサービス を組み合わせること
で一貫性のあるユーザー主導のエクスペリエンスを実現する”
.NET 構想における初期のビジョン
Devices and Services
.NET Framework の構成
OS (Windows)
共通言語ランタイム
(CLR : Common Language Runtime)
各種ライブラリ
共通言語基盤
(CLI : Common Language Infrastructure)
VB C# C++ • .NET 対応の開発言語を利用可能
• 型などの共通仕様
• 言語間のコンポーネント呼び出しが可能
• IO, ネットワーク, 暗号化 …
• ASP.NET, ADO.NET …
• 実行制御
(メモリ管理, スレッド制御, 例外処理, セキュリティ …)
・・・
http://aka.ms/connect
(米国イベントサイト: Channel9)
イベント ダイジェスト
• .NET Core Open Source and
Cross-platform
• Visual Studio Community 2013
• Visual Studio 2015 Preview
• .NET 2015 Preview
• Visual Studio 2013 Update 4
• MSDN Updates
 次期バージョン Visual Studio 2015 プレビュー版リリース
 RTM (正式リリース) は 2015 年を予定
※ プレビュー版は Go-live ライセンスではないため運用環境で利用不可
 Azure 仮想マシン イメージが利用可能
 Visual Studio Ultimate 2015 Preview + Windows Server 2012 R2
 .NET 2015
 .NET Framework 4.6 / .NET Core 5
 .NET Compiler Platform (“Roslyn”)
Visual Studio 2015 Preview / CTP 5
Next Version of Visual Studio
http://aka.ms/jpvs2015preview
Visual Studio 2015 Secondary Installer
Visual Studio 2015 インストールで
セットアップされるソフトウェア群
• Android NDK, SDK
• Visual Studio Emulator for Android
• Apache Ant
• Git CLI
• Google Chrome
• Java SE Development Kit
• Joyent Node.js
• WebSocket4Net
 ポピュラーなサードパーティー製ツールを採用
 Bower – Twitter 社製クライアントサイド パッケージ マネージャー
 Grunt, Gulp – node.js ベース ビルドタスク自動化ツール(タスクランナー)
 npm – Node パッケージ マネージャー, Bower, Grunt, Gulp が利用
 ※ .NET Framework 関連のパッケージ マネージャーは NuGet を利用
Visual Studio 2015 Web 開発
Web Development with Visual Studio 2015
.NET Framework & Core
.NET 2015
Next gen JIT (“RyuJIT”)
SIMD (Data Parallelization)
Runtime Compilers
.NET Compiler Platform (“Roslyn”)
Languages innovation
.NET Core 5 Libraries
.NET Framework 4.6 Libraries
NuGet packages
ASP.NET 5
ASP.NET 4.6
WPF
Windows Forms
.NET Framework 4.6 .NET Core 5
ASP.NET 5
.NET Native
Windows desktop
Windows mobile devices
Windows embedded devices
ASP.NET 5 for Mac and Linux
ASP.NET 5 – 軽量, 高速, オープン
www.asp.net/vnext : github.com/aspnet
.NET オープンソース
Projects
• ASP.NET 5
• Entity Framework
• .NET Core 5
• .NET Compiler Platform
• Plus community projects
License
• MIT License
Contribute
• .NET Foundation
• GitHub
https://github.com/aspnet
https://github.com/microsoft/dotnet
http://www.dotnetfoundation.org
 .NET Core 5 のクロスプラット
フォーム対応
 Linux & Mac サポート
(Mono Project)
 Visual Studio の Linux サポート
(Debug, Docker など)
 Sublime Text 拡張
(OmniSharp / Kulture)
Demo …
Direction of Visual Studio and .NET
.NET の今後
Future of .NET
Next gen JIT (“RyuJIT”)
SIMD (Data Parallelization)
ランタイム コンパイラー
.NET Compiler Platform (“Roslyn”)
Languages innovation
BCL and PCL
Entity Framework
ライブラリ
全てのアプリケーション開発のために
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
オープンソースカンファレンス 2015 Tokyo/Spring
【ハンズオンセミナー】オープン化、軽量化した新生 .NET を体験しよう!
https://www.ospn.jp/osc2015-spring/modules/eguide/event.php?eid=8
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Microsoft Virtual Academy
http://aka.ms/msmva
MVA
Microsoft が提供するオンラインラーニングサイト
.NET についてもっと学びたい方は?
ASP.NET 5 概要
http://aka.ms/dev2015_.net
Visual Studioについてもっと学びたい方は?
Visual Studio 2015 Preview
http://aka.ms/dev2015_vs
インフラ技術者、開発者をはじめ、IT に携わるすべてのエンジニアのための
技術コンファレンス
開催日時: 5 月 26 日 (火) - 27 日 (水)
開催場所: ザ・プリンス パークタワー東京
http://aka.ms/decode15
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
 Yeoman (http://yeoman.io/)
 node ベースのクロスプラットフォーム ツール
 Windows, Mac OS, Linux
 下記の 3 ツールで構成
 yo : スキャフォールディング ツール
 Grunt, Gulp : タスクランナー/ビルドツール
 Bower, npm : パッケージ マネージャー
 Yeoman generator for ASP.NET 5
 ASP.NET 5 プロジェクト生成ツール
Yeoman : Web 開発 クライアント ツール スタック
The web‘s scaffolding tool for modern web apps
 OmniSharp ( http://www.omnisharp.net/ ) オープンソース プロジェクト
 クロスプラットフォーム環境での .NET 開発が可能
 Sublime Text 3, Emacs, Atom, Vim, Brackets …
 Intellisense, ビルド & 実行コマンドなどの機能を提供
OmniSharp : クロスプラットフォーム .NET 開発
OmniSharp Cross platform .NET development
 project.json
 ランタイム バージョンや依存関係などの実行に必要な情報を記述
 Visual Studio 設定などの開発ツール関連情報は含まない
ASP.NET 5 : プロジェクト設定
ASP.NET 5 Runtime
{
"dependencies": {
"Microsoft.AspNet.ConfigurationModel": "1.0.0-alpha4",
}
"commands": {
"web": "Microsoft.AspNet.Hosting server= ..."
},
"configurations": {
"aspnet50": {"dependencies": { ... }},
"aspnetcore50": {"dependencies": { ... }}
}
}
 KRuntime (KRE) : .NET Cross-Platform Runtime (.NET XRE)
 ASP.NET 5 アプリケーションのビルド・実行環境, SDK
 Core CLR, Application Host, Roslyn Loader, …
 K command
 ランタイム エントリ ポイント
 例: “k run”, “k web”, …
 K Version Manager (KVM)
 KRE バージョン管理 : install, upgrade, list, use, alias
 K Package Manager (KPM)
 アプリケーションのパッケージ管理 : restore, install, pack
ASP.NET 5 : ランタイム
ASP.NET 5 Runtime
KRE
K
App
KVM
KPM
 Microsoft.AspNet.Loader.IIS (Helios)
 IIS ホスト
 System.Web には非依存 (Helios ベース)
 他の IIS モジュールとともに統合される
 Microsoft.AspNet.Server.WebListener (WebListener)
 Microsoft.AspNet.Hosting でロードされる (IIS には非依存)
 Http.sys カーネール ドライバー上で直接実行
 Microsoft.AspNet.Server.Kestrel (Kestrel)
 Microsoft.AspNet.Hosting でロードされる (IIS には非依存)
 クロスプラットフォーム (Windows, Mac, Linux) 対応 (予定)
ASP.NET 5 : ホスト サーバー
ASP.NET 5 Servers
 Full .NET CLR
 Visual Studio プロジェクトでデフォルトとなる CLR
 すべての API セットと後方互換性を持つ
 およそ 200 MB, Side-by-Side 実行が可能
 Core CLR (クラウドに最適化されたランタイム)
 ASP.NET 5 のために完全にモジュール化された CLR
 NuGet パッケージとして必要なモジュールだけを組み込める
 およそ 11 MB, Side-by-Side 実行可能
 Cross-Platform CLR
 Linux と Mac OS 対応のクロスプラットフォーム CLR
 ASP.NET 5 アプリケーションの Linux や Mac OS 上での開発と実行が可能
3 つの CLR
Three Runtimes for ASP.NET 5
OpenSource
Operating System
Runtime Loader
Runtime
Platform Libraries
Application Host
Web Server
Application Frameworks
Libraries
Application
Windows
IIS: WebEngine4.dll
Exe: OS
.NET CLR
.NET BCL & FCL
System.Web
IIS
FCL, GAC, NuGet
Loose, GAC, NuGet
MSBuild -> csc.exe
CodeDOM -> csc.exe
Windows, OSX, Linux
“KRE”
.NET CLR
.NET Core CLR
.NET BCL & FCL
.NET on NuGet
“KRE”
IIS, HTTP.SYS
Kestrel
NuGet
NuGet
KRE and Roslyn
.NET Framework .NET Core
 コンテナー型のアプリケーション仮想化技術
 ハイパーバイザー型の仮想化よりも軽量
 オープンソース
Docker とは?
What is Docker?
Server
Host OS
Hypervisor
Guest OS
Bins/Libs
App A
Guest OS
Bins/Libs
App B
Server
Host OS
Docker Engine
Bins/Libs
App A
Bins/Libs
App B
Docker仮想マシン
• Visual Studio 2015 Preview / .NET 2015 Preview
• http://aka.ms/vs2015previewdl
• .NET Core Open Source and Cross-platform
• https://github.com/microsoft/dotnet
• Visual Studio Community 2013
• http://aka.ms/vscomm2013dl
• Visual Studio 2013 Update 4
• http://aka.ms/vs2013ult
Visual Studio 関連リソース
Resources for Visual Studio
© 2015 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.

More Related Content

What's hot (20)

PDF
VSCodeで始めるAzure Static Web Apps開発
Yuta Matsumura
 
PDF
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
Issei Hiraoka
 
PDF
ASP.NETの進化とASP.NET Core Blazorの凄さ
Sho Okada
 
PPTX
20160523 Red Hat and Microsoft
Takayoshi Tanaka
 
PDF
Github codespaces すごく良い。もうこれで 十分なんじゃという話
xiidec
 
PDF
.NET Core 1.0
Akira Inoue
 
PDF
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
日本マイクロソフト株式会社
 
PDF
20141129-dotNet2015
Takayoshi Tanaka
 
PDF
ASP.NET 新時代に向けて ~ ASP.NET 5 / Visual Studio 2015 基礎解説
Akira Inoue
 
PPTX
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
Takao Tetsuro
 
PDF
.NET Core時代のCI/CD
Yuta Matsumura
 
PDF
OWIN って何?
miso- soup3
 
PPTX
.NET vNext
信之 岩永
 
PDF
新登場!Surface Laptop 4
Tomokazu Kizawa
 
PDF
ALMツールたべくらべ
Kaoru NAKAMURA
 
PPTX
.NETクロスプラットフォーム
Yasushi Kato
 
PDF
.NET の今と今後に思うこと (Tokyo Ver.)
Akira Inoue
 
PDF
Angular ユーザーなら押さえておきたい! TypeScript と Visual Studio Code の基礎と活用
Akira Inoue
 
PDF
[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ
de:code 2017
 
PDF
Visual studio extensibility
Takeshi Fujimoto
 
VSCodeで始めるAzure Static Web Apps開発
Yuta Matsumura
 
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
Issei Hiraoka
 
ASP.NETの進化とASP.NET Core Blazorの凄さ
Sho Okada
 
20160523 Red Hat and Microsoft
Takayoshi Tanaka
 
Github codespaces すごく良い。もうこれで 十分なんじゃという話
xiidec
 
.NET Core 1.0
Akira Inoue
 
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
日本マイクロソフト株式会社
 
20141129-dotNet2015
Takayoshi Tanaka
 
ASP.NET 新時代に向けて ~ ASP.NET 5 / Visual Studio 2015 基礎解説
Akira Inoue
 
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
Takao Tetsuro
 
.NET Core時代のCI/CD
Yuta Matsumura
 
OWIN って何?
miso- soup3
 
.NET vNext
信之 岩永
 
新登場!Surface Laptop 4
Tomokazu Kizawa
 
ALMツールたべくらべ
Kaoru NAKAMURA
 
.NETクロスプラットフォーム
Yasushi Kato
 
.NET の今と今後に思うこと (Tokyo Ver.)
Akira Inoue
 
Angular ユーザーなら押さえておきたい! TypeScript と Visual Studio Code の基礎と活用
Akira Inoue
 
[DO02] Jenkins PipelineとBlue Oceanによる、フルスクラッチからの継続的デリバリ
de:code 2017
 
Visual studio extensibility
Takeshi Fujimoto
 

Viewers also liked (20)

PDF
Introduction of "MarkdownPresenter"
Jun-ichi Sakamoto
 
PDF
Gulp ことはじめ
Kyohei Morimoto
 
PDF
[予告篇] みんなで同時プレイするクイズWebアプリでCodeQuizに挑戦!
Jun-ichi Sakamoto
 
PPTX
「それでも人生にイエスと言う」を読んで
Shumpei Shiraishi
 
PPTX
HTML5がもたらすアプリ開発へのインパクト
Shumpei Shiraishi
 
PPTX
Reactive Programming
maruyama097
 
PDF
AngularJS 2.0 Jumpstart
Filipe Falcão
 
PPTX
「それでも人生にイエスと言う」を読んで
Shumpei Shiraishi
 
PDF
More Azure Websites! - JAZUGさっぽろ "きたあず" 第5回勉強会ライトニングトーク
Jun-ichi Sakamoto
 
PDF
最近、リアルタイムWebが面白い
Narami Kiyokura
 
PPTX
秒速一億円
Shumpei Shiraishi
 
PPTX
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
Shumpei Shiraishi
 
PPT
20130921レジュメ2
Shumpei Shiraishi
 
PPTX
はじめにことばありき
Shumpei Shiraishi
 
PDF
CLR/H#74 LT IT勉強会発表用イチオシツール
Jun-ichi Sakamoto
 
PDF
20140823 LL diver Angular.js で構築した note に関して
Shoei Takamaru
 
PDF
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
Akira Inoue
 
PDF
WebRTCがビデオ会議市場に与えるインパクトを探る
Shumpei Shiraishi
 
PPTX
Typescriptの中のこと(浅め)
Kazuhide Maruyama
 
PDF
Ohotech特盛#14 セッション4 予告編
Jun-ichi Sakamoto
 
Introduction of "MarkdownPresenter"
Jun-ichi Sakamoto
 
Gulp ことはじめ
Kyohei Morimoto
 
[予告篇] みんなで同時プレイするクイズWebアプリでCodeQuizに挑戦!
Jun-ichi Sakamoto
 
「それでも人生にイエスと言う」を読んで
Shumpei Shiraishi
 
HTML5がもたらすアプリ開発へのインパクト
Shumpei Shiraishi
 
Reactive Programming
maruyama097
 
AngularJS 2.0 Jumpstart
Filipe Falcão
 
「それでも人生にイエスと言う」を読んで
Shumpei Shiraishi
 
More Azure Websites! - JAZUGさっぽろ "きたあず" 第5回勉強会ライトニングトーク
Jun-ichi Sakamoto
 
最近、リアルタイムWebが面白い
Narami Kiyokura
 
秒速一億円
Shumpei Shiraishi
 
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
Shumpei Shiraishi
 
20130921レジュメ2
Shumpei Shiraishi
 
はじめにことばありき
Shumpei Shiraishi
 
CLR/H#74 LT IT勉強会発表用イチオシツール
Jun-ichi Sakamoto
 
20140823 LL diver Angular.js で構築した note に関して
Shoei Takamaru
 
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
Akira Inoue
 
WebRTCがビデオ会議市場に与えるインパクトを探る
Shumpei Shiraishi
 
Typescriptの中のこと(浅め)
Kazuhide Maruyama
 
Ohotech特盛#14 セッション4 予告編
Jun-ichi Sakamoto
 
Ad

Similar to Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~ (20)

PDF
Linux & Mac OS でも動く! ~ クロスプラットフォーム対応に見る ASP.NET Core 5 の可能性 ~
Akira Inoue
 
PDF
Cloud から IoT まで、なんでもおまかせ ~ .NET 5 正式リリース!
Akira Inoue
 
PPTX
今から始める、Windows 10&新.NETへの移行戦略
信之 岩永
 
PDF
~ Cloud First から Cloud Optimized へ ~ .NET on Cloud が描くモダナイゼーション
Akira Inoue
 
PDF
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
decode2016
 
PPTX
今から始める、Windows 10&新.NETへの移行戦略
信之 岩永
 
PPTX
Modern .NET
信之 岩永
 
PDF
.NET Coreから概観する.NETのOSSへの取り組み
Kouji Matsui
 
PPTX
Dot netcore multiplatform 2
shozon
 
PDF
Empower Every App, Every Developer ~ 統合開発プラットフォーム Visual Studio の進化 ~
Akira Inoue
 
PDF
Introduction to VSCode
Yuki Igarashi
 
PDF
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
Akira Inoue
 
PPTX
広がる .Net
信之 岩永
 
PDF
.NET 5 勉強会 ~.NET Framework から .NET へ~
Fujio Kojima
 
PDF
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
Akira Inoue
 
PPTX
CLI と BCL
shozon
 
PDF
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
Akira Inoue
 
PDF
.NET Conf 2017 Japan Keynote ".NET Everywhere!"
Akira Inoue
 
PDF
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
Akira Inoue
 
PPT
20010127
小野 修司
 
Linux & Mac OS でも動く! ~ クロスプラットフォーム対応に見る ASP.NET Core 5 の可能性 ~
Akira Inoue
 
Cloud から IoT まで、なんでもおまかせ ~ .NET 5 正式リリース!
Akira Inoue
 
今から始める、Windows 10&新.NETへの移行戦略
信之 岩永
 
~ Cloud First から Cloud Optimized へ ~ .NET on Cloud が描くモダナイゼーション
Akira Inoue
 
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
decode2016
 
今から始める、Windows 10&新.NETへの移行戦略
信之 岩永
 
Modern .NET
信之 岩永
 
.NET Coreから概観する.NETのOSSへの取り組み
Kouji Matsui
 
Dot netcore multiplatform 2
shozon
 
Empower Every App, Every Developer ~ 統合開発プラットフォーム Visual Studio の進化 ~
Akira Inoue
 
Introduction to VSCode
Yuki Igarashi
 
ASP.NET vNext / Visual Studio "14" に見る .NET の未来像
Akira Inoue
 
広がる .Net
信之 岩永
 
.NET 5 勉強会 ~.NET Framework から .NET へ~
Fujio Kojima
 
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
Akira Inoue
 
CLI と BCL
shozon
 
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
Akira Inoue
 
.NET Conf 2017 Japan Keynote ".NET Everywhere!"
Akira Inoue
 
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
Akira Inoue
 
20010127
小野 修司
 
Ad

More from Akira Inoue (20)

PDF
New Features in C# 10/11
Akira Inoue
 
PDF
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
Akira Inoue
 
PDF
~ Build と言えば やっぱり Developer! ~ Microsoft 開発ツール最新アップデート
Akira Inoue
 
PDF
.NET の過去、現在、そして未来
Akira Inoue
 
PDF
VS Code Live Share ~ 東京と大阪を繋いでみよう!
Akira Inoue
 
PDF
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
Akira Inoue
 
PDF
.NET の今と今後に思うこと
Akira Inoue
 
PDF
.NET 最新ロードマップと今押さえておきたい技術要素
Akira Inoue
 
PDF
VS Code & Flaskで作るCloud NativeアプリとDevOps
Akira Inoue
 
PDF
.NET Core と Docker コンテナー、そして Azure を使用したマイクロサービスのアーキテクチャ
Akira Inoue
 
PDF
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Akira Inoue
 
PDF
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Akira Inoue
 
PDF
.NET の今 ~ 最新アップデートと 2019 年の展望
Akira Inoue
 
PDF
.NET today and tomorrow
Akira Inoue
 
PDF
.NET の今とミライ (.NET Conf 2018 Japan Keynote)
Akira Inoue
 
PDF
Intelligent Mobile App と Cloud Native が創るアプリ開発の未来 ~ これからの時代のアプリケーション開発ビジョン ~
Akira Inoue
 
PDF
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
Akira Inoue
 
PDF
Azure と Visual Studio で実践するモダナイゼーションとクラウド ネイティブ アプリケーション開発
Akira Inoue
 
PDF
Mobile-first, Cloud-first のその先へ ~ Microsoft が描く Web/Mobile の未来
Akira Inoue
 
PDF
TypeScript and Visual Studio Code
Akira Inoue
 
New Features in C# 10/11
Akira Inoue
 
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
Akira Inoue
 
~ Build と言えば やっぱり Developer! ~ Microsoft 開発ツール最新アップデート
Akira Inoue
 
.NET の過去、現在、そして未来
Akira Inoue
 
VS Code Live Share ~ 東京と大阪を繋いでみよう!
Akira Inoue
 
レガシー Web からの脱却 ~ 開発者が次に目指すべき Web アプリの姿とは?
Akira Inoue
 
.NET の今と今後に思うこと
Akira Inoue
 
.NET 最新ロードマップと今押さえておきたい技術要素
Akira Inoue
 
VS Code & Flaskで作るCloud NativeアプリとDevOps
Akira Inoue
 
.NET Core と Docker コンテナー、そして Azure を使用したマイクロサービスのアーキテクチャ
Akira Inoue
 
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Akira Inoue
 
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Akira Inoue
 
.NET の今 ~ 最新アップデートと 2019 年の展望
Akira Inoue
 
.NET today and tomorrow
Akira Inoue
 
.NET の今とミライ (.NET Conf 2018 Japan Keynote)
Akira Inoue
 
Intelligent Mobile App と Cloud Native が創るアプリ開発の未来 ~ これからの時代のアプリケーション開発ビジョン ~
Akira Inoue
 
"今" 押さえておきたい! Web アプリ開発の技術トレンドとツールの進化
Akira Inoue
 
Azure と Visual Studio で実践するモダナイゼーションとクラウド ネイティブ アプリケーション開発
Akira Inoue
 
Mobile-first, Cloud-first のその先へ ~ Microsoft が描く Web/Mobile の未来
Akira Inoue
 
TypeScript and Visual Studio Code
Akira Inoue
 

Recently uploaded (10)

PDF
Hyperledger Fabric公式サンプル fabric-samples徹底解説
LFDT Tokyo Meetup
 
PDF
プライバシ保護のためのインターネットアーキテクチャの進化 (2025-07-11)
Jun Kurihara
 
PDF
人気ブロックチェーン基盤「Hyperledger Fabric」最新版を動かしてみた!
LFDT Tokyo Meetup
 
PDF
ABC2025S LT講演「世界の窓から Androidこんにちは2025」アプリ自動生成の将来?ロボティクスの夢再び?
嶋 是一 (Yoshikazu SHIMA)
 
PDF
SIG-AUDIO 2025 Vol.02 オンラインセミナー SIG-Audioプレゼン資料_オーディオプラグイン開発_塩澤達矢.pdf
IGDA Japan SIG-Audio
 
PDF
[Hardening Designers Confernece 2025]ランサムウェアでの見えざるログ・見えるログ
kataware
 
PDF
20250630_aws_reinforce_2025_aws_sheild_network_security_director
uedayuki
 
PDF
20250710_Devinで切り拓くDB革命_〜価値創出に集中せよ〜.pdf
Masaki Yamakawa
 
PDF
生成AIパネルトーク(Interop25Tokyo APPS JAPAN M1-07,M2-07 嶋ポジショントーク)
嶋 是一 (Yoshikazu SHIMA)
 
PDF
Hyperledger Fabric最新v3.x系での機能強化、変更点にキャッチアップ!
LFDT Tokyo Meetup
 
Hyperledger Fabric公式サンプル fabric-samples徹底解説
LFDT Tokyo Meetup
 
プライバシ保護のためのインターネットアーキテクチャの進化 (2025-07-11)
Jun Kurihara
 
人気ブロックチェーン基盤「Hyperledger Fabric」最新版を動かしてみた!
LFDT Tokyo Meetup
 
ABC2025S LT講演「世界の窓から Androidこんにちは2025」アプリ自動生成の将来?ロボティクスの夢再び?
嶋 是一 (Yoshikazu SHIMA)
 
SIG-AUDIO 2025 Vol.02 オンラインセミナー SIG-Audioプレゼン資料_オーディオプラグイン開発_塩澤達矢.pdf
IGDA Japan SIG-Audio
 
[Hardening Designers Confernece 2025]ランサムウェアでの見えざるログ・見えるログ
kataware
 
20250630_aws_reinforce_2025_aws_sheild_network_security_director
uedayuki
 
20250710_Devinで切り拓くDB革命_〜価値創出に集中せよ〜.pdf
Masaki Yamakawa
 
生成AIパネルトーク(Interop25Tokyo APPS JAPAN M1-07,M2-07 嶋ポジショントーク)
嶋 是一 (Yoshikazu SHIMA)
 
Hyperledger Fabric最新v3.x系での機能強化、変更点にキャッチアップ!
LFDT Tokyo Meetup
 

Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~

  • 1. ~ Linux & Mac OS でも動く!~ オープンソース & クロスプラットフォーム .NET の歩き方 井上 章 (いのうえ あきら) http://aka.ms/chack 日本マイクロソフト株式会社 デベロッパー エクスペリエンス & エバンジェリズム統括本部 (DX) エバンジェリスト Drew Robbins (ドリュー ロビンス) http://www.drewby.com #devsumiE
  • 2.  Visual Studio と .NET の新しいアプローチを理解する  .NET Core 5 の Mac OS, Linux 対応を学ぶ  ASP.NET 5 の概要を知る セッションのゴール Session Takeaways
  • 4. Microsoft Dev Tools Vision すべての開発者すべてのアプリ
  • 6. .NET 2015 / ASP.NET 5 Openness
  • 8. “To move beyond today’s world of stand-alone Web sites to an Internet of interchangeable components where devices and services can be assembled into cohesive, user-driven experiences” Bill Gates on the goal for .NET Forum 2000 “Web サイトが個々に独立している状態から、交換可能なコンポーネントからなる インターネットへと移行し、さまざまな デバイスとサービス を組み合わせること で一貫性のあるユーザー主導のエクスペリエンスを実現する” .NET 構想における初期のビジョン Devices and Services
  • 9. .NET Framework の構成 OS (Windows) 共通言語ランタイム (CLR : Common Language Runtime) 各種ライブラリ 共通言語基盤 (CLI : Common Language Infrastructure) VB C# C++ • .NET 対応の開発言語を利用可能 • 型などの共通仕様 • 言語間のコンポーネント呼び出しが可能 • IO, ネットワーク, 暗号化 … • ASP.NET, ADO.NET … • 実行制御 (メモリ管理, スレッド制御, 例外処理, セキュリティ …) ・・・
  • 10. http://aka.ms/connect (米国イベントサイト: Channel9) イベント ダイジェスト • .NET Core Open Source and Cross-platform • Visual Studio Community 2013 • Visual Studio 2015 Preview • .NET 2015 Preview • Visual Studio 2013 Update 4 • MSDN Updates
  • 11.  次期バージョン Visual Studio 2015 プレビュー版リリース  RTM (正式リリース) は 2015 年を予定 ※ プレビュー版は Go-live ライセンスではないため運用環境で利用不可  Azure 仮想マシン イメージが利用可能  Visual Studio Ultimate 2015 Preview + Windows Server 2012 R2  .NET 2015  .NET Framework 4.6 / .NET Core 5  .NET Compiler Platform (“Roslyn”) Visual Studio 2015 Preview / CTP 5 Next Version of Visual Studio http://aka.ms/jpvs2015preview
  • 12. Visual Studio 2015 Secondary Installer Visual Studio 2015 インストールで セットアップされるソフトウェア群 • Android NDK, SDK • Visual Studio Emulator for Android • Apache Ant • Git CLI • Google Chrome • Java SE Development Kit • Joyent Node.js • WebSocket4Net
  • 13.  ポピュラーなサードパーティー製ツールを採用  Bower – Twitter 社製クライアントサイド パッケージ マネージャー  Grunt, Gulp – node.js ベース ビルドタスク自動化ツール(タスクランナー)  npm – Node パッケージ マネージャー, Bower, Grunt, Gulp が利用  ※ .NET Framework 関連のパッケージ マネージャーは NuGet を利用 Visual Studio 2015 Web 開発 Web Development with Visual Studio 2015
  • 14. .NET Framework & Core .NET 2015 Next gen JIT (“RyuJIT”) SIMD (Data Parallelization) Runtime Compilers .NET Compiler Platform (“Roslyn”) Languages innovation .NET Core 5 Libraries .NET Framework 4.6 Libraries NuGet packages ASP.NET 5 ASP.NET 4.6 WPF Windows Forms .NET Framework 4.6 .NET Core 5 ASP.NET 5 .NET Native Windows desktop Windows mobile devices Windows embedded devices ASP.NET 5 for Mac and Linux
  • 15. ASP.NET 5 – 軽量, 高速, オープン www.asp.net/vnext : github.com/aspnet
  • 16. .NET オープンソース Projects • ASP.NET 5 • Entity Framework • .NET Core 5 • .NET Compiler Platform • Plus community projects License • MIT License Contribute • .NET Foundation • GitHub https://github.com/aspnet https://github.com/microsoft/dotnet http://www.dotnetfoundation.org
  • 17.  .NET Core 5 のクロスプラット フォーム対応  Linux & Mac サポート (Mono Project)  Visual Studio の Linux サポート (Debug, Docker など)  Sublime Text 拡張 (OmniSharp / Kulture)
  • 19. Direction of Visual Studio and .NET
  • 20. .NET の今後 Future of .NET Next gen JIT (“RyuJIT”) SIMD (Data Parallelization) ランタイム コンパイラー .NET Compiler Platform (“Roslyn”) Languages innovation BCL and PCL Entity Framework ライブラリ
  • 23. オープンソースカンファレンス 2015 Tokyo/Spring 【ハンズオンセミナー】オープン化、軽量化した新生 .NET を体験しよう! https://www.ospn.jp/osc2015-spring/modules/eguide/event.php?eid=8
  • 25. Microsoft Virtual Academy http://aka.ms/msmva MVA Microsoft が提供するオンラインラーニングサイト .NET についてもっと学びたい方は? ASP.NET 5 概要 http://aka.ms/dev2015_.net Visual Studioについてもっと学びたい方は? Visual Studio 2015 Preview http://aka.ms/dev2015_vs
  • 26. インフラ技術者、開発者をはじめ、IT に携わるすべてのエンジニアのための 技術コンファレンス 開催日時: 5 月 26 日 (火) - 27 日 (水) 開催場所: ザ・プリンス パークタワー東京 http://aka.ms/decode15
  • 28.  Yeoman (http://yeoman.io/)  node ベースのクロスプラットフォーム ツール  Windows, Mac OS, Linux  下記の 3 ツールで構成  yo : スキャフォールディング ツール  Grunt, Gulp : タスクランナー/ビルドツール  Bower, npm : パッケージ マネージャー  Yeoman generator for ASP.NET 5  ASP.NET 5 プロジェクト生成ツール Yeoman : Web 開発 クライアント ツール スタック The web‘s scaffolding tool for modern web apps
  • 29.  OmniSharp ( http://www.omnisharp.net/ ) オープンソース プロジェクト  クロスプラットフォーム環境での .NET 開発が可能  Sublime Text 3, Emacs, Atom, Vim, Brackets …  Intellisense, ビルド & 実行コマンドなどの機能を提供 OmniSharp : クロスプラットフォーム .NET 開発 OmniSharp Cross platform .NET development
  • 30.  project.json  ランタイム バージョンや依存関係などの実行に必要な情報を記述  Visual Studio 設定などの開発ツール関連情報は含まない ASP.NET 5 : プロジェクト設定 ASP.NET 5 Runtime { "dependencies": { "Microsoft.AspNet.ConfigurationModel": "1.0.0-alpha4", } "commands": { "web": "Microsoft.AspNet.Hosting server= ..." }, "configurations": { "aspnet50": {"dependencies": { ... }}, "aspnetcore50": {"dependencies": { ... }} } }
  • 31.  KRuntime (KRE) : .NET Cross-Platform Runtime (.NET XRE)  ASP.NET 5 アプリケーションのビルド・実行環境, SDK  Core CLR, Application Host, Roslyn Loader, …  K command  ランタイム エントリ ポイント  例: “k run”, “k web”, …  K Version Manager (KVM)  KRE バージョン管理 : install, upgrade, list, use, alias  K Package Manager (KPM)  アプリケーションのパッケージ管理 : restore, install, pack ASP.NET 5 : ランタイム ASP.NET 5 Runtime KRE K App KVM KPM
  • 32.  Microsoft.AspNet.Loader.IIS (Helios)  IIS ホスト  System.Web には非依存 (Helios ベース)  他の IIS モジュールとともに統合される  Microsoft.AspNet.Server.WebListener (WebListener)  Microsoft.AspNet.Hosting でロードされる (IIS には非依存)  Http.sys カーネール ドライバー上で直接実行  Microsoft.AspNet.Server.Kestrel (Kestrel)  Microsoft.AspNet.Hosting でロードされる (IIS には非依存)  クロスプラットフォーム (Windows, Mac, Linux) 対応 (予定) ASP.NET 5 : ホスト サーバー ASP.NET 5 Servers
  • 33.  Full .NET CLR  Visual Studio プロジェクトでデフォルトとなる CLR  すべての API セットと後方互換性を持つ  およそ 200 MB, Side-by-Side 実行が可能  Core CLR (クラウドに最適化されたランタイム)  ASP.NET 5 のために完全にモジュール化された CLR  NuGet パッケージとして必要なモジュールだけを組み込める  およそ 11 MB, Side-by-Side 実行可能  Cross-Platform CLR  Linux と Mac OS 対応のクロスプラットフォーム CLR  ASP.NET 5 アプリケーションの Linux や Mac OS 上での開発と実行が可能 3 つの CLR Three Runtimes for ASP.NET 5
  • 34. OpenSource Operating System Runtime Loader Runtime Platform Libraries Application Host Web Server Application Frameworks Libraries Application Windows IIS: WebEngine4.dll Exe: OS .NET CLR .NET BCL & FCL System.Web IIS FCL, GAC, NuGet Loose, GAC, NuGet MSBuild -> csc.exe CodeDOM -> csc.exe Windows, OSX, Linux “KRE” .NET CLR .NET Core CLR .NET BCL & FCL .NET on NuGet “KRE” IIS, HTTP.SYS Kestrel NuGet NuGet KRE and Roslyn .NET Framework .NET Core
  • 35.  コンテナー型のアプリケーション仮想化技術  ハイパーバイザー型の仮想化よりも軽量  オープンソース Docker とは? What is Docker? Server Host OS Hypervisor Guest OS Bins/Libs App A Guest OS Bins/Libs App B Server Host OS Docker Engine Bins/Libs App A Bins/Libs App B Docker仮想マシン
  • 36. • Visual Studio 2015 Preview / .NET 2015 Preview • http://aka.ms/vs2015previewdl • .NET Core Open Source and Cross-platform • https://github.com/microsoft/dotnet • Visual Studio Community 2013 • http://aka.ms/vscomm2013dl • Visual Studio 2013 Update 4 • http://aka.ms/vs2013ult Visual Studio 関連リソース Resources for Visual Studio
  • 37. © 2015 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.