【初心者向け】C#.NETとは?C#との違いは?徹底解説
突然ですが、あなたはC#の学習を検討していませんか。
「C#(シーシャープ)」は現在人気のある言語のひとつです。
なにかプログラミングをはじめたいと思う場合に、有力な選択肢になるかと思います。
身近なところでは、3Dゲームのプログラミングにも採用されています。
今回は、そんな「C#」がなぜできたのか、「C#」を使うにあたって必ず登場する「.NET」
とは何なのか、その違いも含めてご紹介します。
C#.NET(シーシャープドットネット)とは?
C#.NETは、標準言語C#を使ったマイクロソフト社製のコンパイラ(及びその機能群)のことです。
「.NET」とは、正式には「.NET Framework」と呼ばれ、マイクロソフト社がインターネット時代に対応するべく
XML仕様を土台にしたプログラムの部品化技術の開発をおこなったものです。
プログラミングやパソコンを使って働きたい!
そのように考え、成長しているIT業界への転職を考えている方も増えてきました。
『IT業界に興味はあるけど、よくわからない…』
『パソコンとかそもそも苦手なのに私なんかにできるのかな』
『エンジニアって聞くけど難しそう』
反対にこのような声も聞く事があります。
そう考えている方は、一度ぜひ転職に成功したエンジニアの方のインタビューをご覧ください!
C#(シーシャープ)とは?
C#は、標準言語の内のひとつです。
マイクロソフト社によって同社の.NET戦略の一環として開発されたオブジェクト指向プログラミング言語です。
当初、マイクロソフト社の.NET技術の開発用のプログラミング言語として既存の「C++」が使われ、それを
マネージC++と呼んでいましたが、標準言語としての「C++」仕様から大きく違ったものになったため、.NET
技術開発用の新言語として新たに誕生させたのが「C#」になります。
この記事を読んでいただいている方におすすめのプログラミングスクールが当メディアが運営するDMM WEBCAMPになります。
ぜひ確認してください。
C#とC#.NETの違いとは?
「C#」は標準の言語仕様のひとつ、つまり「CLI(共通言語基盤)での開発を行うための言語」となります。
この「CLI(共通言語基盤)」とは、「インターネット仕様での標準化」と同じ意味です。
対して、「C#.NET」は、「C#」についての環境に応じて提供された機能群を指します。
つまり、マイクロソフトの環境(Windows環境)による「C#」のことを「C#.NET」と呼称しています。
C# は「CLI 規格上で動く言語」であり、その規格を満たす環境としてマイクロソフト社がて提供するのが「.NET Framework」です。(通称.NETといいます)
つまり、C#は、「.NET Framework 上で動く言語」とも表現できます。
知っていますか?IT業界は市場価値が高まっています!市場価値の高い業界で働くことで、現在より年収UPが可能です。
また、 ITスキルを身につけることで、どの業界でも必要とされる人材に成長できます!
【DMM WEBCAMP】のプログラミングスクールでは、未経験から最短3ヶ月でエンジニアとして転職が可能です。
DMM WEBCAMPでは転職成功率98%の転職コースを複数提供しています
✔︎︎︎企業が本当に求めるビジネススキルを優先的に取得可能!
✔︎︎︎︎キャリアカウンセラーとメンターがあなたの転職活動とスキル獲得を両面サポート‼
✔︎︎︎紹介可能企業は600社以上!?
IT業界に転職したい方はぜひご覧ください!
「なんか今の仕事合わないな・・・」
「IT業界に転職してみたいなぁ・・・」
という方、DMMが運営する「WEBCAMP エンジニア転職」をご検討してみてはいかがですか?
「WEBCAMP エンジニア転職」では最短12週間でITエンジニアを目指すことが可能です!
WEBCAMPの卒業生は転職後に年収もUP!(例:年収250万円→500万円)
しかも今なら受講料の最大70%が給付金として支給されます。
DMM WEBCAMPは経済産業省・厚生労働省が認定した専門実践教育訓練給付金制度の対象です
使用する際の使い分け
違い自体は、「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 などと同等の生産性の高さも持ち合わせる言語です。
「.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を運営する株式会社インフラトップ では、「学びと仕事を通して人生を最高の物語にする」という理念で会社を経営しています。
キャリアアップを目指す方は、この機会に私達と一緒にプログラミングを学んでみませんか?
【インタビュー】未経験でもたった1ヶ月で営業からエンジニアとして転職!
未経験でも1ヶ月のプログラミング学習と手厚いキャリアサポートでエンジニアとして転職したWebCamp受講生にお話を伺いました。
「本当に1ヶ月でプログラミングを学習できるの?」
「未経験でもゼロからエンジニアになれるの?」
と疑問に思っている方は、是非この記事を読んでみてくださいね!