A note to our readers: You asked so we have developed a set of features that allow you to reduce the noise: you can get email and web notifications for topics you are interested in. Learn more about our new features.
Microsoft Build 2018 にて、.NET の Director Program Management である Scott Hunter 氏と .NET の Director Community である Scott Hanselman 氏は .NET の将来についてのセッションを行った。プレゼンテーションの要旨は、 .NET があらゆる種類のアプリケーション、すなわちデスクトップ、Web、クラウド、モバイル、ゲーム、IoT、AI、を構築するプラットフォームとなりうる、というものだった。既に手にしている言語スキルは無駄にはならず、新たな領域に活かすことができる。
.NET の現状
.NET Framework と .NET Core には、毎月100万人の Visual Studio をアクティブに扱う新たなユーザーが増えている。このソフトェアがオープンソースになったことで、Microsoft以外の3,700以上の企業から19,000人を超えるコミュニティコントリビューターが存在している。Samsung は .NET Core を Raspberry Pi で利用可能なように ARM32 に移植した。 Illlyriad Games はパフォーマンス向上のコントリビュートを多数行っている。.NET Conference は2018年9月12日から14日にかけて開催予定で、ここで Microsoft とコミュニティの人々が .NET についてトークする。
現在 .NET Core 2.1 Release Candidate が入手可能だ。 RTM は5月の終わりになると期待されている。 Visual Studio 内のビルド性能の向上に加え、 CLI によるビルド性能も個別に改善されるだろう。 .NET Framework の互換性が向上しポータビリティが改善されるのと同様に ASP.NET Core と EF Core のギャップは少なくなる。 ASP.NET Core は GDPR をフルサポートする予定だ。マイクロサービスと Azure のサポートも改善される。 .NET Core 2.1 のツール性能は、リリース時までには現在の10倍も高速になるとみられる。実は、 .NET Core 2 を使用したまま、性能が改善された .NET Core 2.1 のツールを使用することもできる。性能はデータベースアクセスの領域でも大幅に改善されている。
IoT をサポートするため、 .NET Core 2.01 が現在 Raspberry Pi 2 で Win 10 IoT と同様に動作可能となっている。 Azure IoT Hub のサポートもある。 Sumsung は .NET のパワースタートスクリーンをもつ新しいスマートテレビを公開予定だ。
.NET Core はspan<T>の導入によりメモリ性能が向上されているだろう。ソケットは速度性能によって修正された。 EF Core は遅延ローディング、値変換、クエリ型、データのシード処理を追加した。 ASP.NET Core では、 Razor UI が新しいライブラリとなり、 Azure で SignalR のサポートを追加した。これはフルマネージドなサービスであり、もはやスケーリング、キャパシティプロビジョニング、パーシステントコネクションについて心配する必要はなくなる。 ASP.NET Core を利用してネイティブな SignalR のリアルタイムアプリケーションを構築することも可能だ。
.NET Core 2 は Web とクラウドにフォーカスしていた。 .NET Core 3 はデスクトップ、IoT、AIのサポートも追加される。WinForms や WPF でさえ .NET Core 3 の上で動作可能となる。 XAML Islands により WinForms と WPF は UWP をホストできるようになる。 XAML Controls は WinForms と WPF のためメディア UWP コントロールである。WinForms のための高 DPI 対応もある。これを実現するためには WinForms も変更が必要だが、 .NET Core のサイドバイサイドサポートがあるため、 WinForms のそのバージョンを要求するアプリケーションは .NET Core を利用する残りの部分と分離することができる。サイドバイサイドのサポートによって一般的に、 .NET Core と .NET Framework が独立して進化できるようになる。利用者もまた、アプリケーションを独立して進化させることが可能だ。
Win RT などのすべての Windows 10 API に対して .NET Core からアクセスできるようになる。 .NET Core App Builder は、小さなアプリの起動を高速にし、すべての不要な依存関係を取り除き、自身を含む実行ファイルを生成することを可能とする。
目標は年末までに .NET Core 3.0 Preview と .NET Core 2.2 をリリースすることだ。
Visual Studio 2017
バージョン 15.7 ではリファクタリングのサポートが改善されている。 foreah から for あるいはその逆への変換、 for ループへの LINQ クエリ、 var と明示された型のトグル、などがそれに含まれる。バージョン 15.8 はさらに LINQ リファクタリングが改善される。 Editorconfig の改善は 15.7 と 15.8 の両方に含まれる。タスクエクスプローラーにはプログレスアイコンが追加されるだろう。
Web 開発にとって大きな改善は、15.8 での Razor の整形と Razor ファイルのリファクタリングだろう。 Kubernetes は拡張によってサポートされる。拡張を通じて、コンテナ化されていない Linux App Service に公開することができるようになる。また、拡張を通じて Azure Container Service にも公開できるようになる。
Visual Studio for Mac 7.5 は Razor、TypeScript そして TypeScript をサポートする。 .NET Core での Azure Functions と同様に .NET Standard 2.0 での Xamarin.Forms もサポートされる。 C#7.2、EditorConfig、.NET Core 2.1 RC はすべてサポート対象となる。 Team Foundation Version Control のプレビューも含まれ、これは両者の ID で同じコードベースが用いられている。
.NET と機械学習
Azure Cognitive Services は開発者が利用できる、事前に構築された機械学習モデルのセットである。映像、スピーチ、言語のモデルがコードから REST API で呼ぶことができる。自身のデータを用意し、カスタムモデルを構築、訓練することも可能だ。モデル構築の古典的な方法に加えて、 Microsoft は Bing や Office などのインハウスアプリケーションで使われている技術をベースとした ML.NET を導入している。この技術は現在オープンソースであり拡張可能だ。他の Accord.NET や CNTK などの AI ライブラリと同時に動作させることもでき、プレビューとしてアナウンスされている。Blazor
Blazor は Razor と .NET に基づいた、 WebAssembly によってブラウザで動作する実験的な Web UI フレームワークである。これは、どんなブラウザ上でも動作する高速なシングルページアプリケーションを構築するという作業を簡素化できるように設計されている。 AngularJS や React、 Vue などの技術についての知識は必要とせずとも、オープンなWeb標準を用いてクライアントサイドで動作するWebアプリを .NET で構築することができる。 Blazor は、 .NET が WebAssembly にコンパイルされたバージョンの Mono を使用している。これはあらゆるブラウザーでネイティブの性能で動作する。プラグインやコードトランスパイルは不要である。
Rate this Article
- Editor Review
- Chief Editor Action