20200729 手動式 StorageCrusher表D 破壊ツール:約1kg H D破壊ツール付属部品 設置トレイ, ビット4本 SSD破壊ツール付属部品 設置トレイ, ツール
.NET Coreとツール類の今
-
Upload
yuki-igarashi -
Category
Technology
-
view
3.386 -
download
0
Transcript of .NET Coreとツール類の今
~ dotnetConf 2016 Japan ~
.NET Coreとツール類の今
五十嵐祐貴(いがらしゆうき) @bonprosoft
Microsoft Student Partners Fellow, Microsoft MVPサトヤ仙台
自己紹介
五十嵐祐貴 (いがらし ゆうき) @bonprosoft
Microsoft Student Partners Fellow
Microsoft MVP for Visual Studio and Development Technologies
東北大学工学部 / サトヤ仙台代表 / セキュリティ・キャンプ
http://vbcpp.net/about/
セッションのゴール
.NET Core向けに使えるツール類の最新動向を知る
各種ツール類の立ち位置を知る
.NET Coreアプリケーション開発の最初の手がかりを得る
ハッシュタグは #dotnetconfJpです
突然ですが問題です
• .NET Coreで最低限開発に必要なツールを整えるのに必要な時間はどれくらい?
A)5分
B)10分
C)30分
D)1時間
Demo .NET Core Development with .NET Core SDK+CLI
.NET Core SDK + .NET Command Line Interface tools
• 環境構築(Windows)1. http://dot.netから.NET Core SDK Installerをダウンロード
2. インストール スタンドアロン版も以下から入手可能(ただし最新ビルド版が降ってくるので注意)
https://github.com/dotnet/cli
インストールスクリプトも利用可能
dotnet-install.ps1 / dotnet-install.sh
https://docs.microsoft.com/en-
us/dotnet/articles/core/tools/dotnet-
install-script
.NET Core SDK + .NET Command Line Interface tools
> dotnet
※ https://github.com/dotnet/cli/tree/rel/1.0.0/src/dotnet/commands
o アプリケーションの実行
> dotnet example.dll
o アプリケーションの開発(要SDK)
new 新規プロジェクトの作成
restore プロジェクトに必要なパッケージの復元
build/run プロジェクトをビルド
test ユニットテストを実行
pack NuGetパッケージとしてパッケージング
publish 発行用にファイルをまとめる
など[※]
余談: .NET Core SDK Installerの中身
• WiXインストーラを展開o dotnet-dev-win-x64.1.0.0-preview2-003121.msi
o dotnet-sharedframework-win-x64.1.0.0.msi
o dotnet-host-win-x64.1.0.1.msi
o dotnet-hostfxr-win-x64.1.0.1.msi
• さらにmsiも展開…
余談: .NET Core SDK Installerの中身
o dotnet-dev-win-x64.1.0.0-preview2-003121.msi
dotnet.dll (dotnet [Command]の中身), csc.dll など
o dotnet-sharedframework-win-x64.1.0.0.msi
dotnet.dllなど動作させるのに必要な共有ライブラリ群
o dotnet-host-win-x64.1.0.1.msi
ランタイム本体
o dotnet-hostfxr-win-x64.1.0.1.msi
ランタイムを実行するために必要なライブラリ
.NET Coreで開発しようと思ったら…
.NET Core SDK with CLI
with Visual Studio Code
with Xamarin Studio
with Visual Studio
• 主に以下のツールが利用可能o クロスプラットフォームで開発・デバッグが可能
(再掲)突然ですが問題です
• .NET Coreで最低限開発に必要なツールを整えるのに必要な時間はどれくらい?
A)5分
B)10分
C)30分
D)1時間
.NET Core SDK with CLI
with Visual Studio Code
with Xamarin Studio
with Visual Studio
Visual Studioを用いた.NET Coreアプリ開発
• Visual Studio 2015o 現状はWindows上でのみ動作
o .NET Coreに対しても強力な開発支援を提供
o 無償版のCommunityエディションも公開学生や個人開発者は従来の有償版機能を無料で利用可能に
• 導入方法1. Visual Studio Update 3を適用
2. .NET Core 1.0 for Visual Studio をインストールhttps://go.microsoft.com/fwlink/?LinkId=817245
Dockerとは
• コンテナ型のアプリケーション仮想化技術o コンテナ同士は独立
o サーバー仮想化とは異なり、OSカーネル等は共有
o Dockerfileに依存関係や構成を記述
⇒高速かつオーバーヘッドの少ないデプロイ・移行が可能
画像は http://patg.net/containers,virtualization,docker/2014/06/05/docker-intro/ より
Dockerとは
• WindowsにおけるDockerの利用o 外部のDockerホスト(Linux)に接続
o Docker for Windows (Public beta)
Hyper-V上にDockerホストとなるLinuxマシンを配置し接続
o Docker Toolbox
VirtualBox上にDockerホストとなるLinuxマシンを配置し接続
Linuxコンテナ
Dockerとは
• WindowsにおけるDockerの利用o 外部のDockerホスト(Linux)に接続
o Docker for Windows (Public beta)
Hyper-V上にDockerホストとなるLinuxマシンを配置し接続
o Docker Toolbox
VirtualBox上にDockerホストとなるLinuxマシンを配置し接続
o Windows Server Container
o Hyper-V Container
Linuxコンテナ
Windows系コンテナ
.NET Core Docker Image
• Docker向けの.NET Coreイメージo Linuxコンテナ以外にWindowsコンテナ向けのイメージも公開済み
https://hub.docker.com/r/microsoft/dotnet/
> docker pull microsoft/dotnet
Visual Studio 2015とDocker
• Docker Tools for Visual Studio 2015 – Previewo Visual StudioからDockerイメージ/コンテナの作成や管理を行うことが可能に
o Windowsコンテナもサポート予定
Demo .NET Core Development with Visual Studio 2015
Docker Tools for Visual Studio
クロスプラットフォームな開発支援環境
• クロスプラットフォームで動作する高機能なエディタ
o https://github.com/Microsoft/vscode
o 30以上の言語に対応
o OSS系ツールと強力な連携
npm – Node パッケージマネージャー
Bower – Twitter社製クライアントサイドパッケージマネージャー
Grunt, gulp – ビルドタスク自動化ツール(タスクランナー)
など
o 拡張機能の導入によりさらに高機能に
Visual Studio Code
+ +
Demo Visual Studio Code Overview
Visual Studio Codeを用いた.NET Coreアプリ開発
• C# extensiono .NET Core向けの開発支援・デバッグ用拡張機能
IntelliSense, 定義へ移動, すべての参照を検索 など…
o 内部のエンジンにはOmniSharpを採用https://marketplace.visualstudio.com/items?itemName=ms-vscode.csharp
> ext install csharp
.csprojの読み込みが一時的に無効状態(OS XとLinuxのみ)⇒ OS X / Linux上でのMono / Unityアプリケーションの開発には
“Legacy C# Support extension”を使いましょう(公式アナウンス)
なお、両方の拡張機能の共存は不可能
Yeoman / Yeoman generator for ASP.NET Core
> yo aspnet
• .NET Core向けテンプレート生成ツールo クロスプラットフォームで動作
o 様々な種類のプロジェクトテンプレートの作成が可能
o Sub Generatorを用いるとクラス単位での生成も可能
• 導入方法1. Node.jsをインストール https://nodejs.org/en/
2. Yeomanをインストール npm install –g yo
3. Bowerをインストール npm install –g bower
4. ASP.NET Coreのジェネレーターをインストール
npm install –g generator-aspnet
dotnet new vs. yo aspnet
dotnet new vs. yo aspnet
dotnet new vs. yo aspnet
Q. yo aspnet ってなくなるんですか?
A. いや、そんなことはない。
新しいテンプレートツールを作って、VSや dotnet new / yo aspnet などで利用可能にしたい。(超意訳)
https://github.com/dotnet/cli/issues/2052#issuecomment-207031714
Demo .NET Core Development with Visual Studio Code
Yeoman Generator for ASP.NET Core
Xamarin Studioを用いた.NET Coreアプリ開発
• Xamarin Studioo Macで動作する.NET/Xamarinをターゲットとした統合開発環境
o 現在はWindows版は提供されていない
• 導入方法1. アドインリポジトリ管理でAlpha channelを有効化
2. Add-in ManagerでDNXをインストール
Xamarin Studioを用いた.NET Coreアプリ開発
• 導入方法3. Xamarin Studioを再起動すると…
新規プロジェクト作成画面
.NETの将来
.NET FRAMEWORK .NET CORE XAMARIN TOOLS
まとめ
• .NET Coreアプリケーションはクロスプラットフォームで開発可能
• 開発環境の導入は非常に簡単
• 多くのツールがオープンソースとして公開済
今すぐ開発に挑戦してみよう!
祝 .NET Core 1.0 RTMリリース