4月生募集中!当社人気の転職保証コース
プログラミング学習から転職成功まで導く、当社人気のDMM WEBCAMP(旧WEBCAMP PRO)。
3月生は満員となっております。4月生募集に向け、お早めの申込みをオススメします。
プログラミング未経験でもエンジニア転職を絶対成功させたい
スキルを身に着けて人生を自ら切り開きたい
上記にあてはまる方は、ぜひご検討ください!

突然ですが、あなたはC#の学習を検討していませんか。

「C#(シーシャープ)」は現在人気のある言語のひとつです。
なにかプログラミングをはじめたいと思う場合に、有力な選択肢になるかと思います。
身近なところでは、3Dゲームのプログラミングにも採用されています。

今回は、そんな「C#」がなぜできたのか、「C#」を使うにあたって必ず登場する「.NET」
とは何なのか、その違いも含めてご紹介します。

C#.NET(シーシャープドットネット)とは?

C#.NETは、標準言語C#を使ったマイクロソフト社製のコンパイラ(及びその機能群)のことです。

「.NET」とは、正式には「.NET Framework」と呼ばれ、マイクロソフト社がインターネット時代に対応するべく
XML仕様を土台にしたプログラムの部品化技術の開発をおこなったものです。

C#(シーシャープ)とは?

閃いてる男

C#は、標準言語の内のひとつです。
マイクロソフト社によって同社の.NET戦略の一環として開発されたオブジェクト指向プログラミング言語です。

当初、マイクロソフト社の.NET技術の開発用のプログラミング言語として既存の「C++」が使われ、それを
マネージC++と呼んでいましたが、標準言語としての「C++」仕様から大きく違ったものになったため、.NET
技術開発用の新言語として新たに誕生させたのが「C#」になります。

【WebCamp卒業生インタビュー】1ヶ月でRubyをゼロから学び、Webエンジニアとして転職!

C#とC#.NETの違いとは?

老眼

「C#」は標準の言語仕様のひとつ、つまり「CLI(共通言語基盤)での開発を行うための言語」となります。
この「CLI(共通言語基盤)」とは、「インターネット仕様での標準化」と同じ意味です。

対して、「C#.NET」は、「C#」についての環境に応じて提供された機能群を指します。
つまり、マイクロソフトの環境(Windows環境)による「C#」のことを「C#.NET」と呼称しています。

C# は「CLI 規格上で動く言語」であり、その規格を満たす環境としてマイクロソフト社がて提供するのが「.NET Framework」です。(通称.NETといいます)
つまり、C#は、「.NET Framework 上で動く言語」とも表現できます。

使用する際の使い分け

ポーズする男

違い自体は、「C#とC#.NETの違いとは?」で述べた通りです。

しかし、C#は、標準言語ではありますが、元は「.NET」という技術の開発用にマイクロソフト社が作った言語です。
また、現時点では、マイクロソフト社しかコンパイラを出していない状況です。

このことから、現在では、事実上C#とC#.NETはほぼ同じと言ってもいい(同じことを指す)状態です。

Microsoft Visual Studioでの呼び方の遷移

Microsoft Visual Studio(マイクロソフト ビジュアル スタジオ)はマイクロソフトのソフトウェア開発製品群
およびそれらを管理する統合開発環境です。

当初は、「Visual Studio C#.NET」という呼び方になっていましたが、2005からは「Visual Studio C#」となりました。
現在では、「 C#.NET 」という製品名は使っていません。

Visual C#.NET 2002
Visual C#.NET 2003
VIsual C# 2005
VIsual C# 2008

「C#」について

コーヒーを飲みながらパソコンを見る女

市販アプリケーションやビジネスソフトウェアの開発現場で 最も広く使われてきている言語は C と C++ でした。
この二つの言語は非常に細かなコントロールを行える柔軟な言語ですが、 柔軟性と引き換えにソフトウェア開発が難しいという欠点があります。

C や C++ を使用してアプリケーションを開発するには 他の言語を使用して 同等のものを作る作業に比べ、開発期間が長くなる傾向にありました。

C や C++ プログラマは、基礎となるプラットフォームの機能にアクセスできるパワーを持ち、 高速なソフトウェアの開発が行うことができ、既存のソフトウェアのと統合も可能で、 さらに必要があれば低レベルのコーディングもできる環境がないかと考えていました。

このようなことを踏まえて、マイクロソフト社は C#と呼ばれる、新しい言語を作成しました。
C# は C++ のパワーと柔軟性を持ち、 同時に Visual Basic などと同等の生産性の高さも持ち合わせる言語です。

コツコツ独学×スクールで実践。未経験からエンジニアに転職!【WebCamp卒業生インタビュー】

「.NET Framework」について

「.NET Framework とは」マイクロソフト社 が提供する、(2000年6月に発表された)開発プラットフォームです。Windowsアプリケーションだけでなく、Webベースのアプリケーションも使用可能です。

「.NET Framework」では、プログラムはネイティブコードではなく、「IL (Intermediate Language)」と呼ばれる中間コードにコンパイルされます。この IL を実行するための環境(の仕様)を 「CLI (Common Language Infrastructure)」といいます。IL は、この CLI 仕様にそった実装さえされていれば任意のプラットフォームで実行することが出来ますCLI はファイル、メモリ、ネットワーク接続などのリソースを管理しているので、 メモリの解放し忘れなどによるリソースリークを防ぐことが出来ます。

現在は、Microsoft 自身による Windows 上の CLI 実装である Common Language Runtime (CLR)に加えて、 Microsoft は Corel と提携し、Mac / FreeBSD 版の CLI を開発していたり、Ximian が Linux 版の CLI であるmonoを、 Southern Storm Software が、DotGNU を開発中です。.NET Framework に対応したすべての言語は IL にコンパイルされます。

現在、.NET Framework に対応している言語は Microsoft が提供している C#、VB.NET、F#、C++/CLI (C++を.NETに適応するように改良したもの) や、サードパーティの提供する Perl や Python など、20種類以上のものがあります。.NET Framework では、これらすべての言語で同じライブラリを利用できますし、 異なる言語で書かれたプログラムを呼び出すことが出来ます。例えば、C++/CLI で書かれたクラスを継承した新しいクラスを VB.NET で作り、そのクラスを C# から呼び出すといったことも可能です。また、.NET Framework を用いることでプログラマは COM やレジストリなどの知識がなくても分散アプリケーションの作成、配布が容易に行えます。

まとめ

いかがだったでしょうか。「C#」はこれからも様々な分野での採用が見込まれるとても将来性もある言語です。
開発もVisualStudioをはじめ、有料版はもちろん、無料の環境でも開発可能ですので、興味のある方は学習してみてください。

DMM WebCampについて

DMM WEBCAMPは3ヶ月間で未経験から即戦力エンジニアを育成する転職保障付きのプログラミングスクールです。1ヶ月でプログラミング・Webデザインを学ぶ通い放題の「ビジネス教養コース」も展開しています。

DMM WEBCAMPを運営する株式会社インフラトップ では、「学びと仕事を通して人生を最高の物語にする」という理念で会社を経営しています。

キャリアアップを目指す方は、この機会に私達と一緒にプログラミングを学んでみませんか?

4月枠も残りわずか当社人気の転職保証コース
プログラミング学習から転職成功まで導く、当社人気のDMM WEBCAMP(旧WEBCAMP PRO)。
3月受入枠は満員となっております。4月枠に向け、お早めの申込みをオススメします。
プログラミング未経験でもエンジニア転職を絶対成功させたい
スキルを身に着けて人生を自ら切り開きたい
上記にあてはまる方は、ぜひご検討ください!

▼未経験から1ヶ月でWEBデザイン・プログラミングを学びたい方はこちら!

【インタビュー】未経験でもたった1ヶ月で営業からエンジニアとして転職!

未経験でも1ヶ月のプログラミング学習と手厚いキャリアサポートでエンジニアとして転職したWebCamp受講生にお話を伺いました。

「本当に1ヶ月でプログラミングを学習できるの?」
「未経験でもゼロからエンジニアになれるの?」

と疑問に思っている方は、是非この記事を読んでみてくださいね!

“未経験”でもたった1ヶ月で営業からエンジニアとして転職!『WebCamp』受講者インタビュー

おすすめの記事