2020年12月07日
川俣晶の縁側ソフトウェア技術雑記 total 5605 count

.NET5について分かってきたことと感想まとめ

Written By: 川俣 晶連絡先

 現時点で.NET5について分かってきたこと、感想を簡単にまとめる。

  • .NET Core 3でWinFormが使えるという話は「馬鹿野郎」レベルで夢想的なものであり、これでもう.NET Frameworkは要らないという主張する者は相手にする意味すらなかった。しかし、.NET 5では最低限の入口ぐらいは入れた
  • .NET 5のデスクトップ開発はMAUIではなく、Windows専用。まだマルチプラットフォームではない。MAUIは.NET6待ち
  • .NET 5は約束の地ではなかったが、そこを目指していることは分かった。たぶん、.NET 6から7ぐらいではそこそこの線まで行けそうな気もする
  • 現在の問題はそこではないことが分かってきた。電子署名がない実行ファイルはインストールしても実行時に警告が出る模様。(何回かで消える模様)
  • 実行ファイル(インストーラー含む)のダウンロードは電子署名があってもダウンロード数が少ないと警告を食らい、回りくどい操作をしないとダウンロードできない模様

 つまり、手軽にすぐ利用できるという前提を持つ限り、デスクトップアプリのハードルは非常に高い。以前はインストールするためにセットアップを起動してあとは全部リターンで済んでいたが、済まなくなってきている。.NET5でデスクトップ開発ができるとしても、配布は現実的ではない。

 代案は2つ。

  • Windowsストアで配布する
  • Webアプリにする (Blazor開発)

 Windowsストアは機能的な制約も大きく審査は厳しい。そもそも配布できるかどうか不明確であり、リスクが高すぎる。そもそも、Windowsストアの制約から解放されるための.NET5の検討でもあった。

 Webアプリ化はもっと制限が大きく、機能不足は著しい。こんなものを世界の標準にしているWeb技術関係者は全員切腹ものだろう。しかし、利用するための制約の低さという意味では最も低い。幅広く使われることを想定するアプリはWebアプリとして作りたいが、これも機能の制約との相談である。

結論 §

 このままだとMAUIは産まれる前に死ぬ。

 好き勝手にGUIアプリを作って配布する文化は事実上既に死んでいる。2010年頃の方法論はもう通用しない。

 .NET5は、.NET Core 3時代と比較すると驚くほど良くなっているが、全く別の次元で逆風に晒されている。

雑感 §

 Blazorにマルチスレッドの機能がまだ無いのは、WebAssemblyの標準にまだないかららしいのだが、実装は既にあるので、昔のMSなら実装している状況だと思う。

 ちなみに、標準準拠100%でも、動かないソフトの価値はゼロである。

 我々はこの不自由な状況からどう解放されれば良いのだろうか?