このページの本文へ

前へ 1 2 次へ

Windows Info 第270回

あらためて「.NET」について整理する

2021年04月11日 10時00分更新

文● 塩田紳二 編集● ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

オープンソース版の.NET Frameworkの「.NET Core」

 .NET Coreは、Windows 10とともに登場した「オープンソース版」の.NET Frameworkだ。.NET Coreは、オープンソースソフトウェアとして、Windows 10のリリース翌年、2016年6月に公開された。簡単に言えば.NET Frameworkの根幹の部分だけを取り出して、「Windows以外でも動作できるようにした.NET Framework」だ。

 当初、Microsoftは、Windows10のUWPとWindowsBridgeと呼ばれる4つのプロジェクトを組み合わせ、ウェブアプリ、Win32デスクトップアプリ、Androidアプリ、iOSアプリをWindows 10で動作させ、UWPからそれらのアプリを開発できるようにすることを計画した。

 さらにはWindows 10をファミリー化して、Xbox OneやWindows Holograph、Windows Mobile、Windows IoTなどの派生バージョンや、プラットフォームを作った。これらすべてで動作できるように考えられたのがUWPであり、UWPアプリだ。

PCだけでなく、Windows Mobile、Xbox、HoloLensなど「Windowsファミリー」全部で動くアプリがUWPアプリだ。このためPCのWindows 10には、「Windows 10 Desktop」なる名称もあった

 このため、UWPはWindows 10ファミリーの“最大公約数”的なものになった。WindowsBridgeは、既存の他のプラットフォームのアプリケーションをWindows 10で動かすためのもので、.NET Coreは、UWPで作ったアプリケーションを他のプラットフォームでも動作させるためのものとした。「世の中すべてWindows 10」みたいな計画で、そのための.NETが.NET Coreだったのだ。

Windows Bridgeを使うことで、ウェブアプリ、デスクトップアプリ、Android、iOSのアプリがWindowsで動作。さらにUWPをベースにすることで、さまざまなプラットフォーム向けのアプリを開発できるとしていた

 しかし、WindowsBridgeは早々に撤退。残ったのは、Win32アプリをMicrosoftストアで販売するためのDesktop Bridge(Project Centennial)だけ。UWPはマルチプラットフォーム化を想定していたため、Windows固有の機能に依存しないように開発できるようにした。それがために不自由さを生み出し、Windowsのアプリケーション実行環境としても不満足なものになってしまった。実際に初期のUWPには「できないこと」が多すぎた。

 .NET Coreが産まれた背景には、Windows 8で導入されたWinRTとWindowsストアアプリがある。モダン環境はWindows 8で産まれた。そのときの実行環境が「WinRT」だ。このとき、Windowsのプログラムは、モダン環境(WinRT、ストアアプリ)とWindows 7までのデスクトップ環境に分離し、それぞれ別の作り方をすることになった。モダン環境はWindows 10ではUWPへと変化した。WinRTは、.NETの実行システムを含んでいたが、ライブラリに相当する部分は、Windowsストア用に作られたWinRT用のものだった。

 Windows 8とWindows 10で、Microsoftは、UWP/モダン環境とデスクトップ環境の2つを持つことになった。UWPでアプリを作れば、どのWindows 10でも動き、他のプラットフォームにも移植が簡単というのは“建前”としては理解できるが、その結果として、UWPには「キツい制限」と「不満足なAPI」しかなかったわけだ。

 .NET Coreは、.NETの「コア」として作られた。もちろんオープンソース化し、さまざまなプラットフォームに移植可能にするには、Windowsに依存した部分があってはならない。.NETの根幹部分だけを抽出して作り、さまざまなモジュールと組み合わせて、実行環境に合わせたアプリケーションを作れるようにした。.NET Coreは、.NET Frameworkの再構築でもあるのだ。

 今風に言えば、「リブート」や「リターンズ」ってやつである。もっとも、APIとしてはWinRTのときに再構築しているので、「リブート・リターンズ」ってやつかもしれない。

 その後、Microsoftは方向転換する。せっかくXamarinまで買収してマルチプラットフォーム化を推進したのにUWPにあまりに人気がなく、Windowsの開発者は相変わらずデスクトップアプリばっかり作っているからだ。

 そこで開発者に人気のデスクトップアプリケーションへの回帰と、古くなった.NET Frameworkの置き換えとして、.NET Coreを活用することにしたのである。その方向性が見え出したのが、2018~2019年である。具体的な製品としてデスクトップアプリでUWPのユーザーインターフェースを導入可能にする「XAML Islands」や「MSIX」が発表されたのがこの頃だ(どうしようか考え始めたのは、さすがにその前なのだろうが)。

 そして.NET Core 3.0(2019年9月リリース)では、Windowsデスクトップアプリケーションの開発をサポートした。.NET Core 3.0がデスクトップアプリに対応するという計画は、.NET Core 3.0がリリースされる前年のBuild 2018で発表されており、この頃には、Project Reunionの下地が出来ていたのだと考えられる。

 そして2020年に発表されたのが「Project Reunion」だ。2つに分かれたWindowsの開発環境がこうして一体化する。なんだか、超古代の遺物が元の場所に戻された結果、驚愕の展開となる映画を見ているような気になってくるが、結末にはまだ早い。Project Resunionが完成するのが今年の第4四半期、来年の「お楽しみ」だろう。

前へ 1 2 次へ

カテゴリートップへ

この連載の記事

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥1,980
2
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,890
3
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥740
4
UGREEN USB Type Cケーブル PD対応 100W/5A 超急速充電 USB C ナイロン編み 断線防止 iphone17/16/15シリーズ/iPad/MacBook Pro/Galaxy S24/Matebook/iPad/Xperia等USB-C各種対応(1m, ブラック)
UGREEN USB Type Cケーブル PD対応 100W/5A 超急速充電 USB C ナイロン編み 断線防止 iphone17/16/15シリーズ/iPad/MacBook Pro/Galaxy S24/Matebook/iPad/Xperia等USB-C各種対応(1m, ブラック)
¥743
5
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
6
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥1,100
7
KIOXIA(キオクシア)【日本製】SDカード 128GB SDXC UHS-I Class10 読出速度100MB/s 国内正規品 メーカー保証5年 KLNEA128G
KIOXIA(キオクシア)【日本製】SDカード 128GB SDXC UHS-I Class10 読出速度100MB/s 国内正規品 メーカー保証5年 KLNEA128G
¥1,880
8
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ホワイト T-K6A-2630WH
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ホワイト T-K6A-2630WH
¥1,899
9
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
¥4,918
10
エルパ(ELPA) 扉付タップラン 電源タップ 延長コード 125V 3m 3個口 ホワイト WBT-N3030B(W)
エルパ(ELPA) 扉付タップラン 電源タップ 延長コード 125V 3m 3個口 ホワイト WBT-N3030B(W)
¥652

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン