「プログラミング学習のツボ」へようこそ!
管理人のKENです。
本サイトでは、文系・初心者の私が、プログラミング学習を進める中でつまづいたこと、
最初から知ってれば良かったということをまとめていきます。
これからプログラミング学習を始める方の一助になれば幸いです。
今回は『C#(シーシャープ)』のお話です。
『C#(シーシャープ)』とは何か?
『C#』を一言で言うと、
Windowsアプリ開発やゲーム開発が得意なプログラミング言語です。
有名なサービスだと、
以下のようなサービスにも、
『C#』が使われています。
- Microsoft(マイクロソフト)のサイト
- Bing(ビング)
⇒Microsoftが作った検索サイト
(※Google、Yahoo!のようなもの) - Unity(ユニティ)
⇒ゲーム開発によく使われる開発環境の『Unity』で、
『C#』が言語として採用されています。
『C#』はMicrosoft社が開発したプログラミング言語です。
Windows(ウィンドウズ)やExcel(エクセル)、
Word(ワード)なんていう言葉を、
誰もが一度は聞いたことがあると思います。
Microsoft社はこれらのサービスを開発した会社です。
創業者のビル・ゲイツも有名ですよね。
そういった背景を持つ為、
『C#』は、Windows上で動くアプリ制作に適しています。
また、
ゲーム開発が得意というのは、
『Unity』との関係が大きく影響しています。
『Unity』は、
ゲーム開発に必要な機能がまとまった開発ツールで、
多くのゲーム開発者から支持を受けています。
この『Unity』で、
何か動きを付け足したり、
変更を加えたりする際に、
『C#』を使います。
世の中にある多くのゲームは、
『Unity』で開発されている為、
『C#』を習得すれば、
ゲーム開発で力を発揮出来るという訳です。
ゲーム開発をしてみたい方は、
真っ先に学習すべきプログラミング言語だと言えます。
学習難易度はどうでしょうか?
プログラミング学習初心者からすると、
やや難しいプログラミング言語かもしれません。
同じプログラミング言語である『Python(パイソン)』なら1行ですむコードが、
『C#』では複数行書かなければいけない、
なんていうケースがあります。
コードの記述量が多くなりがちなので、
学習の過程で小難しく感じる人も。
また、
同じくプログラミング言語である『JAVA(ジャバ)』と、
文法が似ている点も特徴です。
『JAVA』を既に習得している方からすれば、
『C#』は学びやすい言語と言えます。
とはいえ、汎用性が高く、
メジャーな言語の一つであることに間違いはありませんので、
学習するプログラミング言語としては有りだと思います。
Windowsアプリ開発や、
ゲーム開発関係の仕事に就きたい方は、
学習しておいて損は無い言語だと言えるでしょう。
『C#』は、Microsoft社によって開発されたプログラミング言語
先述しましたが、
『C#』は、Microsoft社によって開発された言語です。
アンダース・ヘルスバーグ (Anders Hejlsberg)さんという、
デンマーク人のプログラマによって開発されました。
アンダース・ヘルスバーグさんが、
1996年にMicrosoft社へ移籍し、
2002年にC#正式リリースとなりました。
『C#』を語る上で欠かせないのが、
統合開発環境(※)の『Visual Studio(ビジュアルスタジオ)』の存在です。
※統合開発環境環境とは 開発に必要なツールが一つにまとまった開発環境のこと。 開発効率が上がる、便利な道具箱というイメージ。
『Visual Studio』もMicrosoft社が作ったものです。
非常に優れた自動補完機能を持っており、
プログラミングの生産性をぐっと高めてくれます。
先述した『Unity』との相性もよく、
ゲーム開発も効率的に行えるようになります。
また、色々な機能を増やす拡張機能がある為、
自分のやりたいことに合わせて、
自由にカスタマイズ出来る点も魅力的です。
Microsoft社が開発をしているだけあって、
特にWindows環境下において、
色々な機能やサポートが充実している言語だと言えます。
他の記事でもいつも記載していますが、
プログラミング言語の成り立ちや、
コンセプトを知ると、
そのプログラミング言語の得意なことが見えてきます。
気になるプログラミング言語があったら、
学習する際に、
少し調べてみると参考になります。
また、
『C#』は『オブジェクト指向言語』ということも補足しておきます。
オブジェクト指向とは、
プログラムをひとまとまりのモノとして切り分けて見ることで、
読みやすく、後で修正しやすくすることです。
コードの記述量が少し長くなるケースもある為、
プログラミング学習初心者の方にオススメとは言いづらいかもしれません。。
ゲーム開発や、Windowsアプリ制作をしたい!
という明確な目的を持って学習に取り組む方にオススメします。
『C#』で出来ること
プログラミング言語ですので、
一通りのことは『C#』実現可能です。
以下、その中でも得意なものの例をあげておきます。
-
『Unity』を使えば、個人でもしっかりとしたゲームが作れる
-
『Visual Studio』の存在により、アプリ開発時等、
ドラッグ&ドロップで直感的に画面作成出来る(GUIデザインと言います) -
Windowsと相性がよく、Windowsアプリの開発がしやすい
-
マルチプラットフォームに対応している
(一つのコードで、WindowsやMac等に対応したものが作れる)
逆に、『C#』が苦手なことは以下のようなケースです。
-
AI関係
-
コードを簡潔に書く(記述量が増えがち)
-
『Visual Studio』等、開発環境の容量が大きい(スペックが低いPCだと辛い)
これらが気になる場合は、
別の言語を選んだ方が効率良く開発出来ると思います。
なんとなく、
『C#』のイメージが湧いてきましたでしょうか?
全てを完璧に覚えていく必要はありません。
基本の書き方、考え方はしっかり理解すべきですが、
後は、どんなことが出来るかなんとなく掴んでおき、
やりたいことに合わせて、
都度調べて身につけるスタンスで焦らずいきましょう!
プログラミング学習全てに言えることですが、
完璧主義はやめましょう。
分からなければ、一旦飛ばして次!
くらいの心構えの方が学習も長続きします。
『C#』で出来ることや書き方を詳しく知りたい方は、
以下のようなサイトも参考になります。
Microsoft 公式サイト
じゃぱざむ
分かりやすく解説してくれているサイトです。
『C#』のオススメ学習法は?
以下のような学習サービス利用がオススメです。
上記のような学習サービスを使いながら、
復習も兼ねて、参考書を何冊か読みながら実践すると、
より知識が整理されるのでオススメです。
私が学習に使ったオススメの参考書も載せておきます。
↓ゲーム開発『Unity』を入り口に学んでみるのもオススメ!
まとめ
- 『C#』は、Windowsアプリ開発やゲーム開発が得意なプログラミング言語
- 『C#』には、Microsoft社によって開発されたプログラミング言語
- 『Unity』によるゲーム開発や、『Visual Studio』による強力な開発サポートは魅力的。
- コード記述量が多くなりがちで、プログラミング学習初心者にオススメとは言えないかも。。
- ゲーム開発やWindowsアプリを作成したい!と明確な目的を持った方にオススメな言語!
- 『C#』の学習は、Progate・Udemy・ドットインストール等と、
参考書の組み合わせで進めよう!
今回は、『C#』学習のツボについてまとめてみました。
皆さんの学習の一助になれば幸いです!
