Microsoft .NET Core アップデートが開発者に問いかける: 調子はどうですか?

Table of Contents

Microsoft .NET Core アップデートが開発者に問いかける: 調子はどうですか?

Microsoft は、オープン ソースでクロス プラットフォームである .NET プラットフォームの次世代バージョンである .NET Core と ASP.NET Core の RC2 (リリース候補 2) をリリースしました。

これはRC2という名称が示すよりも大きなアップデートです。11月のRC1リリース以降、Microsoftは.NET Core用の新しいコマンドラインツール「.NET CLI(コマンドラインインターフェイス)」を導入し、DNX(.NET実行環境)ツールを削除しました(こちらで報告されています)。

オープンソースの.NETがRC2リリースに近づいています

オープンソースの.NETがRC2リリースに近づいています

新しいツールにもかかわらず、Microsoftはフレームワーク自体は「RTM(製品版)に向けてほぼ準備が整っている」と述べています。フレームワークの最初のバージョンがリリースされた後も、ツールはプレビュー版のままとなります。

このリリースには、.NET Frameworkとコンパイラのクロスプラットフォームフォークである.NET Coreと、WebフレームワークであるASP.NET Core(旧称ASP.NET 5)の両方が含まれています。ASP.NET Coreの新機能として、Visual Studioでの完全なデバッグサポートと、オンプレミスとAzureの両方でActive Directoryを使用した認証と承認のサポートが挙げられます。

.NET Core は現在、Windows および Mac に加えて、Red Hat Enterprise Linux 7.2、Centos 7.1、Debian 8.2+、Ubuntu 14.04、Linux Mint 17+ などのより多くのオペレーティング システムをサポートしています。

Microsoftは新しい展開オプションも導入します。.NET Coreランタイムの共有インストールに依存するアプリケーションを展開できるようになり、Windows上の既存の.NET Frameworkの動作に似たものになります。この展開オプションは「ポータブルアプリ」と呼ばれ、その名称の由来は「アプリケーションが.NET Coreのインストール間で移植可能」であるということです。

「自己完結型アプリ」という選択肢も残されています。これは、アプリケーションコードだけでなくランタイムも含みます。この種のアプリは、ターゲットプラットフォーム向けに特別にコンパイルする必要があります。

.NET Core RC2 の API には、グラフィックス サポート用の System.Drawing (Web アプリケーションでも便利な場合があります) や、データベース アプリケーション用の System.Data 名前空間のより完全な実装など、いくつかの重要な追加機能があります。

これは、.NETのすべての実装で利用可能な基本APIセットである.NET Standardライブラリをサポートする最初のリリースでもあります。プログラムマネージャーのRich Lander氏は、これは「ポータブルクラスライブラリの次期バージョンと考えることができます」と述べています。

最後に、Microsoftはデフォルトでオンになっているテレメトリ機能を追加しました。「これにより、.NET Coreツールの使用状況情報を収集できます」とLander氏は述べています。収集されるデータは、使用されたコマンド、使用されたフレームワーク、およびバージョンをカバーします。個人データは含まれず、コードのスキャンも行われません。これらの制約にもかかわらず、一部の開発者は懸念を抱いています。「このデータ共有の自動的な「オプトイン」ポリシーは気に入りません。MSIインストーラーでチェックボックスをオンにしてユーザーに確認するべきだと思います」とある開発者は述べています。オプトアウトしたい場合は、環境変数DOTNET_CLI_TELEMETRY_OPTOUTを設定することで設定できます。

このRC2リリースは、Microsoftのクロスプラットフォーム.NETにとって大きな前進であり、Windows Server 2016の展開計画の重要な部分を占めています。Server 2016にはNano Serverが含まれており、.NET Coreはサポートしていますが、.NET Frameworkはサポートしていません。より小型で高速な.NETアプリケーションは、マイクロサービスやコンテナへの移行にも適しています。

Discover More