徹底比較! プログラミングを始めるならどの言語から?
C、Java、Javascript、Python… プログラミングを始めるにあたってまず直面するのが、どの言語が良いのか問題
ここではそれぞれの言語を比較して、自分のしたいことがどれとマッチしているか調べていきましょう!
目次
C
C言語の良いところは、とにかく入門系の情報が多いところです。古くからある言語で、長年に渡って基礎から始めるならコレというレベルで親しまれてきました。
しかし、C言語を使う場面はもうほとんどありません。現在主流の言語とは、プログラミングの方向性も違っています。
C言語は、少し堅苦しい言語ではありますが、複雑な仕様は無いため、基礎を作るのにはちょうどよい言語とも言えます。
C言語はこういう人にオススメ
- 何かを作るより、基礎固めをしたい
- とにかく初心者向けの情報が多いものにしたい
Java
Javaは、とにかく企業でも採用数が多いことにあります。
流行りというわけではありませんが、需要が高く、できることも多い言語です。また、Javaを習得していれば他言語への応用も程よく効きます。
また、Android用アプリでも主流の言語です。
Javaはこういう人にオススメ
- 堅実なプログラミングがしたい
- サーバ側のプログラムを組みたい
- Androidアプリを作りたい
- 需要が高い言語にしたい
C++
C++は主にゲームやIoT等の組み込みなどで利用されています。非常に高速であり、オブジェクト指向の書き方も、関数型プログラミングの書き方も、OSに直接干渉することも、ほとんどなんでもできます。
また、その高速さから、PythonについでAIでも活用されています。
C言語の仕様を網羅しており、C言語の入門書がほぼそのまま利用できるという利点もあります。 (ただ、VisualStudioでの開発では少し注意が必要です)
C++はとてもとても奥が深く、本当の意味でマスターしている人は片手で数えるしかいないであろう、というくらい奥が深い言語です。
C++はこういう人にオススメ
- ゲームを作りたい (特にUnrealEngineやCocos等で)
- IoT、組み込み、ロボット関連に進みたい
- 非常に高度なコーディングができるようになりたい
- 他言語に一瞬で対応できるだけのコーディング力とプログラムの動作の知識を身に着けたい
- C言語の情報の多さを活用したい
C#
C#は一瞬C言語の派生のように思えますが、文法としてはJavaと似ています。そのため、C言語の情報はあまり利用できません。
C#は、Unityでのゲーム開発や、WindowsのGUIアプリケーションにしばしば用いられます。他にもMacやiOS、Androidアプリの制作も、主流ではないものの可能です。
最も型に厳密と言える言語で、Java以上の堅実なプログラミングが可能です。
C#はこういう人にオススメ
- 堅実なプログラミングがしたい
- ゲームを作りたい (特にUnityやCryEngine等で)
- Windows用のGUIアプリケーションを作りたい
Javascript
Javascriptは、Webサイト上で動くものから、サーバで動くものまで、幅広くカバーしています。この言語一つで多くものものが作れるということです。
CやJavaと比べると色々と制約がゆるい言語ですが、特別な環境構築をしなくてもブラウザで簡単に動かして学べるのは魅力です。
そういった汎用性の高さや、これを拡張したTypeScriptの登場もあり、流行りかつ長期的に主流を保ち続けると言える言語です。
また、開発環境を組めば、TypeScriptを使ってオブジェクト指向を学べたり、堅実なプログラムが書けたり他者が作成したライブラリを簡単に組み込めるという特徴もあります。
JavaとJavascriptは、名前こそ似ていますが、全く異なる言語です。コードの書き方も、向いている内容も異なります。
Javascriptはこういう人にオススメ
- とにかく動くものをすぐに作りたい
- 主にWeb系のサービスを作りたい
- ブラウザで動くゲームを作りたい
- 現在主流の言語で開発したい
- 慣れてきたら堅実なプログラムを書けるようになりたい
Python
Pythonの特徴の一つは文法がシンプルであることです。しかし、これがメインの特徴とは言えません。
一番の特徴は、人工知能関連で最も主流であることです。機械学習するならPythonといっても過言ではありません。それに倣って、映像処理、動画処理、計算や統計などでもよく利用されます。もちろん、それ以外の汎用的な用途でも十分活用できます。
Pythonはこういう人にオススメ
- AIを作りたい、将来もAI関連を目指したい
- 統計など、数学系の処理を主にしたい
PHP
PHPはWeb系のサーバにしばしば用いられる言語です。特にWebのサーバサイドフレームワークの1つであるLaravelは非常によく利用されます。
Javascriptと同様に言語の仕様が緩く、簡単にプログラムが書けます。
PHPはこういう人にオススメ
- Webサービスのサーバ側を作りたい
- まずは動くプログラムを書きたい
- WordPressの運用を深く行いたい
それでもどれが良いかわからない時
筆者のオススメはJavascriptです。
- 現在主流
- ブラウザ上で画面を動かせるので、見た目が良い
- 制約が緩いため、動作するプログラムを書きやすい
- 作れるものが多い
- TypeScriptに踏み込めば、型やオブジェクト指向の学習も進められる
- 多くのライブラリが利用できるため、ややこしい部分を考える必要性が低い
といった利点があります。何事もそうですが、始めたての頃はとにかくモチベーションを保つことが重要になります。
画面で実際に動く、ゲームが動かせる、少ない知識でもとりあえず動かせる、というのは、楽しくプログラムを書くのにはうってつけの言語です。
まとめ
それぞれの言語には向き不向きがあり、どのような分野でどの言語が使われているかはバラバラです。
自分のしたいことに合わせるのであれば、やりたいことにマッチした言語を。
プログラムを学ぶこと自体が目的なら、まずは楽しんで作れそうなものを選んで、それに合った言語を選ぶのが最適です。
