rksoftware

Visual Studio とか C# とかが好きです

C# で作れるアプリ(Web)

作れるアプリ

C# では多彩な形式のアプリが作れます。ほぼ JavaScript が支配的な実行環境となる Web フロントエンドを除いてほぼなんでも作れます。Web フロントエンドについては Web Assembly という技術であれば C# でも作れますが、まだ仕事は少ないのが実情でこれからの技術です。

Web

ローカルマシン上ではなく Web を介してブラウザなどで使うアプリです。皆さんがインターネットで使っているサービスのようなアプリが作れます。

ASP.NET Core

C# で Web アプリを作るスタンダードな選択肢です。特別な理由がなければこの形式を選択します。C# で Web アプリを作る仕事としても最も多く選択される形式です。

Blazor Server

C# で Web アプリを作るのは前述の ASP.NET Core と同じですが、Web の仕組みをあまり知らなくともなんとなく作れる (ASP.NET Core と比較しての話です) のが特徴の一つです。後述の Blazor WebAssembly とソースコードの書き方は同じですが動作の仕組みは違っています。まだ新しい技術で普及しているとは言えない状態です。

Blazor WebAssembly

C# で WebAssembly を作るスタンダードな選択肢です。WebAssembly 自体が新しい技術でまだ普及しているとは言えない状態です。しかし WebAssembly を作るということであれば有力な選択肢になります。

Uno Pratform

C# でモバイルアプリやデスクトップアプリ、WebAssembly といったクロスプラットフォームアプリを作る選択肢です。まだ新しい技術であらゆる機能が十分に実装していると言える段階にはないため苦労をする場面も出てきます。しかし C# を扱うエンジニアからの評判がよく、非常に期待度の高い技術で、先を見据えた場合に有力な選択肢になります。

レガシー

現在は使われない古い技術です。
ずっと使い続けている古いアプリの改修の仕事など、関わる機会はゼロとは言えません。存在だけは知って置くとよいでしょう。

ASP.NET Web フォームアプリケーション

Web アプリを作ります。現在は使われない古い技術です。前述の Windows フォームアプリケーション よりその度合いは強く、現行の環境 (.NET/.NET Core) ではもう動作しません。

ASP.NET MVC アプリケーション

Web アプリを作ります。ASP.NET Web フォームアプリケーション と同様に現行の環境 (.NET/.NET Core) では動作しない技術です。前述の ASP.NET Web フォームアプリケーション よりは新しい技術で、.NET Framework 環境の場合は選択される技術です。

※ほかにも Web アプリを作る方法もありますが、C# としては印象が薄かったりします。このコンテンツは入門者向けということでここでは割愛します。