Microsoft社から「.NET 5」が2020年11月にリリース予定という発表がありました。
「.NET 5」って新しく出てきた名前を言われてもピンと来ない人も多いと思います。私もいまいちピンと来ませんでした。
しかし、フレームワークの大幅な変更はソフトウェアエンジニアのみならずシステムエンジニア(SE)にも大いに関係してきますよね?
今回は「.NET 5」について解説していきます。
「.NET 5」とは?
「.NET」には現在、「.NET Framework」、「.NET Core」、「Mono」と大きく3種類あります。「.NET 5」ではそれらが1つに統合され、Windows/Linux/macOSなどを1つのプラットフォームで管理できるようになります。
いわゆる「クロスプラットフォーム開発」が可能になるのです。
なぜ「.NET 5」という名前なの?
最新の「.NET」は「.NET Framework 4.7.1」になります。「.NET 4」としてしまうと「.NET Framework 4*」と区別が付かなくなってしまいますよね?
バージョン4から5にインクリメントされているのはユーザーの混乱を避けるためです。
「.NET Framework」は「4.8」が最終バージョン
こういったこともあって、現行の「.NET Framework」はバージョン4.8が最終のサポートバージョンということが発表されています。
つまり、今後は嫌でも「.NET 5」に移行していくということです。
尚、「.NET 5」のサポートはメジャーリリースが毎年一度行われ、偶数番号のバージョンがLTS(Long Time Support)にあたるようです。
「.NET 5」でできること/できないこと
ソフトウェアエンジニアやシステムエンジニアの方が気になるところはこちらでしょう。
- 「.NET 5」でどんな機能が実装されているのか?
- 以前できていたことができなくなることはあるのか?
それぞれについて深堀りしていきたいと思います。
「.NET 5」の新機能
- ランタイムの選択が楽になる
- 相互運用ができる
- 組み込み系をサポート
Xamarinで使用されるMonoであったり、.NET Coreで使用されるCoreCLRの選択が楽になります。
そして、Javaとの相互運用がすべてのプラットフォームで可能になります。
「.NET 5」でできないこと
「.NET 5」ではWCF(Windows Communication Foundation)とASP.NETのWebフォームがサポートされないようです。
Webフォーム自体があまり使われている実績がなく、現場では衰退傾向にあるようですね。
「.NET 5」の将来性
「.NET 5」は夢のようなフレームワークですが、今までの.NETの歴史と痛い目を見てきた経験から言うと、「.NET 5」移行直後は現場での混乱が予想されます。
さすがにリリース初版から全ての.NETを1つで賄うというのは不可能でしょう。
それと、毎年メジャーアップデートをしていく内容によってシステムへの影響範囲も考慮して開発計画と設計をしていかなくてはいけません。
ソフトウェアエンジニアやシステムエンジニアは今後数年間は相当な苦労が待っていると思います。
しかし、Microsoftにとって.NET 5」は一大プロジェクトですから、「やっぱり、.NET 5やめます」といったことにはならないでしょう。むしろ「.NET 5」が順調に稼働していけば世界のスタンダードになっていく可能性もあります。
そういったことを考えならが、これからも「.NET 5」に注視していきます。
コメント