結論
私は学生向けのプログラミング教室でプログラミングを教えていますが、たまにおすすめの言語を聞かれます。
おススメの言語は人によって違います。なぜなら
言語によって、できることが違う。
何をするかによって使う言語が変わる。
からです。
以下に、やることに対応したメジャーな言語を挙げていきます。
また、言語の学習は最低限の知識(変数や条件分岐、繰り返しなど)は座学で学んでもいいですが、それ以降は、自分の作りたいものを作りながら自然と身につけていくのが良いと私は思います。
ゲームをつくりたい
ゲームを作る場合は多くの場合、C#を使うことになるでしょう。
ゲーム制作では、多くの場合ゲームエンジンと呼ばれる開発ツールを使います。
現在(2022年)人気のゲームエンジンに、Unity(ユニティ)とUnreal Engine(アンリアルエンジン)があります。
使用する言語は、Unityが”C#”、UnrealEngineが”C++”です。
ただし、UnrealEngineはブループリントと呼ばれるノードを使ったコーディングを使用できるため、必ずしもC++の知識は必要ありません。
これは、ゲーム制作ツールの一つであるUnityで使用する言語だからです。
スマホアプリをつくるなら選択肢は多い
スマホアプリを作る場合、iOS用なら”Swift”、Android用なら”Java”などが使用できます。
iOS,Androidどちらにも対応したアプリ(クロスプラットフォーム)を作りたい場合、FlutterやUnityなどのフレームワークを使います。
言語は、Flutterは”Dart”、Unityは”C#”です。
競技プログラミングをやりたい
競技プログラミングは色々な言語で挑戦することができます。
圧倒的に多くの人が”C++”を使用しているので、C++はおすすめですが
カジュアルにはじめるならPythonもおすすめです。
Pythonは処理速度が遅いといったデメリットもありますが、シンプルにコーディングでき標準で役に立つ機能が使えたりします。
Webアプリを作りたい
Webアプリは“JavaScript”が一番メジャーでしょう。プログラミング言語といっていいか微妙ですが、HTMLとCSSなども必要となります。
Flutterなどでもウェブアプリは作れるので“Dart”でも開発ができます。
個人的に、Vue.jsというフレームワークが使いやすかったです。(言語はJavaScript)
サーバーサイドはFirebaseとか使っちゃいましょう。
まとめ
上記にまとめたように、やりたいことによって使う言語は変わります。
言語から選ぶのではなく、やりたいことをやってるうちに自然と言語は覚えていきます。
一つの言語ができるようになれば、次の言語は調べながらであれば大体できます。
私自身も、メインで勉強した言語はC言語ですが、Java、JavaScript、Python、Dartなど様々な言語でプログラミングができます。
この記事を見ている方は「将来に役立つ言語を選択したい」、「マイナーな言語を選択して損したくない」など、思っている人もいるかもしれませんが、大丈夫です。ほとんどのプログラミング言語は文法や書き方が多少違う部分はありますが、ベースの考え方は同じです。
そもそも、将来は今とは全く別の言語が流行ってることも全然あり得ます。
最初の選択に悩みすぎて一歩踏み出せないのはもったいないので、やりたいことが決まったら早速やってみましょう。