プログラミング言語の多さにこれからプログラミングを始めようと思った時にビックリしますよね。
私はあまりにも多くていったいどれを選べば良いか分かりませんでした。
このページを読めば、プログラミング言語の種類や特徴が分かります。
先に結論を言えば、プログラミング初心者には「なりたい職業」や「つくりたいもの」でプログラミング言語を選ぶのがおすすめです。
おすすめの理由や、仮になりたい職業が無い…
という人向けの選び方も紹介します。
文系未経験者におすすめの選び方は1つだけ
文系でプログラミング未経験者に関わらず、初心者におすすめのプログラミング言語の選び方は「ゴールから逆算して選ぶ」このたった1つです。
なりたい職業、つくりたいもので選ぶ
プログラミング初心者向けの言語の選び方は「なりたい職業、つくりたいもので選ぶ」理由ですが、他の理由で選ぶと続かないからです。
プログラミングは「環境開発の構築ができない」「エラーがググっても解決できない」などで何度も挫折しがちな点が存在します。
そして、プログラミングに挫折する人の理由で上位を占める回答が「モチベーションが続かなかった」です。
マラソンもゴールが無いと最後まで走ろうとは思えませんよね。
- iPhoneのアプリをつくりたい。
- ●●さんみたいなエンジニアになりたい。
- ◯◯の不満をWebサービスで解消したい。
というゴールがある人が結局続いています。
けど、私もそうでしたがプログラミングを学ぼうと思った時、初めからなりたい職業やつくりたいものが無い場合も多いです。
そんなあなたには次の2つの視点からプログラミング言語を選んでみてはどうでしょうか。
なりたい職業やつくりたいものが無い場合の選び方
なりたい職業やつくりたいもの(サービス)が無い場合は「求人数」か「難易度」から選んでみてはどうでしょうか。
特にプログラミングを始めたい理由の上位に「転職したい」「手に職を付けたい」が挙がります。
私と同じ人は下記記事も合わせて参考にしてください。
>>IT業界への志望動機。文系未経験からなぜエンジニアになりたいか?
1.求人数で選ぶ
理由が明確にない場合の1つ目は求人数で選ぶ点です。
まずは就職し、プログラミングが出来るようになってから自分の進みたい道を選ぶ手もあります。
言語 | 求人数 |
---|---|
C、C++ | 2,884企業、14,759求人 |
Java | 1,791企業、5027求人 |
PHP | 1,201企業、2,973求人 |
JavaScript | 1,151企業、2,635求人 |
Ruby | 721企業、1,771求人 |
C# | 580企業、1276求人 |
Python | 759企業、1,832求人 |
Swift | 371企業、799求人 |
Kotlin | 287企業、606求人 |
Perl | 194企業、324求人 |
Scala | 114企業、285求人 |
Golang | 76企業、127求人 |
※IT/Web業界の求人・採用情報に強い転職サイトGr◯◯n様のサイトで調査結果(2020年6月時点)
就職で選ぶなら就職保証のあるプログラミングスクールに通うのも手です。
>>プログラミングスクールおすすめ3選!文系未経験から転職実績あり。最短3ヶ月後にはプログラマーに
求人数だけで安易に選んで失敗した私の経験談です。
20代でプログラマーになりたい人は必読です。
>>文系20代未経験でもIT業界へ転職しweb系エンジニアになるには?
2.難易度で選ぶ
続いては難易度で選ぶ時の参考データです。
言語 | 難易度と一言コメント |
---|---|
C、C++ | 難易度★★★ ポインタやメモリの概念で挫折しがち。 |
Java | 難易度★★ 出来ることが多すぎて難易度上がりがち。 |
PHP | 難易度★ プログラムが間違ってても動いたりする… |
JavaScript | 難易度★ 直感的にわかりやすく、初心者におすすめだが極めるのは別。習得度に差が出がち。 |
Ruby | 難易度★ 日本発のおかげでググったら答えもドキュメントも豊富。おすすめ。 |
C# | 難易度★★ 中間的な難しさと言われている言語。 |
Python | 難易度★ for文や配列の書き方が独特。機械学習の理論などが難易度★★★。 |
Swift | 難易度★ 82歳のおばあちゃんもiPhoneのゲームを開発。 |
Kotlin | 難易度★ Javaよりは難易度は下がる。チュートリアルから始めよう。 |
Perl | 難易度★★ 難易度と求人数から検討したら… |
Scala | 難易度★★ 比較的新しい言語で書籍など教材が少ないため難易度は高いかも。 |
Golang | 難易度★ 比較的始めやすい言語だが、求人は超即戦力レベルを求められる。 |
向いてないとさえ思ったので、難易度で選ぶのも一つの手です。
勉強法に関してはこちらを参考にしてください。
>>プログラミング完全初心者が転職するまでの最速勉強方法【4ステップ】
習得時間の目安はこちら。
>>【実録】プログラミング習得時間4つの壁。1000時間で就職しました
プログラミング言語の種類と特徴
言語 | 特徴 | 主なサービス例 |
---|---|---|
C、C++ | 歴史も長く、大学など最初にC言語を教えている学校も多数。 ただし、習得のハードルは他の言語に比べて高い。 |
Wantedly People |
C# | Microsoftが開発した言語。C++とJavaをもとに作られた言語だが、互換性はない。ゲーム開発で活用されている。 | 価格.com |
Golang | Googleが開発した言語。実行速度が早く、並列処理に強い。 2018年プログラミング言語年収ランキングで1位を獲得。 |
メルカリ、クックパッド |
Java | 汎用性が高く、どんなコンピューター(OS)でも使える。 大規模システム開発にも用いられ、求人数が多い。 |
Twitter、Evernote |
JavaScript | webコンテンツに動的な処理を追加でき、世界でもトップシェアを誇る言語。 | Tokyo Mirai Mode |
Kotlin | Googleが開発したAndroid向けの言語。Javaよりコードが短く、互換性がある。 | Retty |
Perl | CGIのほとんどはPerlで開発されている。歴史が古く、文法の自由度も高い。 | はてなブログ |
PHP | ブログに多いWordPressで使用されている言語で、フレームワークが豊富。Web制作会社の大半が採用してる言語。 | BASE、ココナラ |
Python | カンタンな構文で読みやすく、書きやすい。 機械学習を使った人工知能(AI)の開発でよく使用される。 |
Instagram、You Tube |
Ruby | 書くのが楽しく、気持ちよく書けると評判で記述量が少ない。まつもとゆきひろさんが作成した日本生まれの言語。 | Crowdworks、食べログ |
Scala | オブジェクト指向と関数型、2つの特徴を持っており、コード量が少ない。Javaとの互換性あり。 | スタンバイ |
Swift | Appleが開発した言語。 iPhone、iPadなどiOS向けで使用される。 |
ママリQ |
※主なサービス例に関しては、複数の言語が使用されており代表例を記載しています。
プログラミング言語の種類と特徴について解説しました。
あなたがエンジニアになるための参考となれば嬉しいです。