プログラミング初心者向け

プログラミング言語の選び方|初心者は何から学ぶのが効率的?

こんにちは、東京の片隅でWeb系エンジニアしてますせいや(@knkSeiya)です。

「ITエンジニアって賃金の水準が高いし流行りのリモートワークもできて憧れる。自分もエンジニアになりたいけど、プログラミングの勉強ってまず何をしたらいいんだろう。調べてみたらプログラミングの言語もたくさんあるみたいだし・・・」

こんな悩みを持つ方は大勢います。

プログラミングやコンピュータサイエンスに全く触れる機会がなかった人が急にプログラミングの学習をしようとしても、複雑で何したらいいか分からなくなっちゃうんです。

そこで本記事では「たくさんあるプログラミング言語のどれをまず学べばいいか」というテーマで話をしていきます。

プログラミングを学んでみたい初学者の助けになれば幸いです。

初心者が最初に学ぶのにおすすめのプログラミング言語

悩む人

プログラミングを学んでみたいけど、どのプログラミング言語を勉強すれば良いんだろう?

プログラミング言語ってたくさんの種類があって、初心者の人はまずどの言語から勉強すれば良いのかわからないですよね。

結論から言うと「どの言語でもOK」なんですが、ここでは僕がおすすめの言語を紹介しておきます。

初学におすすめな言語は「JavaScript」です。

JavaScriptは主にブラウザ(ChromeとかSafariとか)で動作する言語で、Webの画面に動きを付けたりするのに使います。

なぜオススメなのかは以下の通り。

  • プログラミング言語の中で難易度が簡単なので取っ付きやすい
  • ブラウザがあれば動くので複雑な環境を用意する必要がない
  • Webの必須技術なので需要がなくなることがない

JavaScriptはすぐにでも動かすことができます。

例えば、JSPlaygroundsではページ内でJavaScriptが簡単に練習できるので遊んでみてください。

下記みたいな四則演算から、条件分岐(if構文)や一通りのJavaScriptが動きます。

// 入力した値を足し算した結果を返す処理
function addValue(x, y) {
    return x + y;
}

// 2と3を入力して結果を貰う
const result = addValue(2, 3);

// 結果を表示
result

JavaScriptを学ぶには、Udemyの「実例でわかる JavaScript 初心者講座」もオススメです。Udemyは定期的にセールをやっているので、安いときに見かけたらぜひやってみて下さい。

せいや

個人的には最初の教材は本よりもUdemyの動画教材が取っ付きやすくてオススメです。

初めて学習するプログラミング言語の選び方

初めて学習するプログラミング言語の選び方について、どんな基準で選べばいいか解説します。

すぐに動かせるプログラミング言語を選ぶ

初めて学習するプログラミング言語はすぐに動かせる言語がオススメです。

すぐに動かせるって言うのは、テキストを書いたらもう動く、みたいな奴ですね。

プログラミング言語によっては、動かすための環境を作るのに手間がかかるものがあります。

そういうのは環境を作っている最中に挫折しやすいので注意です。

簡単に動きが確認できる言語を選ぶ

最初に学習するプログラミング言語は簡単に動きが目に見えて確認できる言語が良いと思います。

プログラミングの馴れ初めって、コンソールに「Hello world!!」と出力するのが習わしなんですが、いつまでもそれじゃ正直つまらないですよね?

プログラムを触り始めるキッカケって人によって違うと思うですが、滑らかに動くアプリケーションに憧れたり、ゲームを作ってみたかったりとか。

実際に文字を表示するだけじゃなく、何かボタンやら図形やらを動かせると楽しくて勉強も捗るし何より目に見えて動くとモチベーションも上がります。

せいや

ちなみに僕はゲームが作りたくてプログラムをはじめたクチです。

みんなが使っている言語を選ぶ

初めて学習するプログラミング言語はみんなが使っている言語を選びましょう。

何かと得します。マジで。

と言うのもプログラムの勉強って、調べて書いて動かして調べて・・・の繰り返しです。

ほとんど使われていないプログラミング言語の情報ってググってもなかなか出てこないんですよ。調べてもわからないことほど時間かかってツライことってないです。

下図はQiitaの人気技術ランキングです。プログラミング言語以外も入っていますが、Python、JavaScript、Rubyのプログラミング言語が記事数トップ3ですね。

出典:Qiitaのタグを2018/12~2019/3の記事数、フォロワー数、いいね数で比較してみた
  • Python・・・AI、機械学習やデータ分析が得意
  • JavaScript・・・Webフロントエンド(ブラウザ上処理)開発が得意
  • Ruby・・・主にRailsフレームワークと組み合わせてサーバサイドの開発
せいや

Pythonは時勢的にキテますが、最初に練習するのがAIや機械学習ってのはちょっと根気が必要だと思います。

プログラミング言語は目的から逆算して選ぶ

学習したいプログラミング言語を選ぶときのポイントは、「自分が何を作りたいのか?」を意識することです。

作りたいものや自分で決めた目標があると人間頑張ることができますし、モチベーションも続きます。

Webサイトを作りたい場合

Webサイトを作る場合に使うことになる主なプログラミング言語はPHP、Ruby、JavaScriptです。

Webサイトの主な開発言語

ブラウザ上で主にWebサイトの見た目やボタン操作などの処理を作るのに使うのがJavaScriptです。

Webサイトの見た目を作るためには、HTMLやCSSの基本的な知識も必要になってきます。これらはプログラミング言語ではなくマークアップ言語と呼ばれます。

そしてWebサイト上でのユーザーの操作を元に、データベースに変更を加えたり必要なデータを集めてきたりする処理を作るのに使うのがPHPやRubyといったサーバサイドの言語です。

PHPならLaravelとか、RubyならRailsといったフレームワーク(開発しやすくするツールみたいなもの)と組み合わせて使うのが一般的です。

AIや機械学習に興味がある場合

AIやりたいならほぼPython一択です。

PythonはAI用に作られた言語ってわけではないですが、実用レベルのライブラリが揃っていて他の言語を選ぶ理由がありません。

Pythonはプログラミング言語としては比較的読みやすい言語です。しかし主に活用されている分野がディープラーニングや統計なので、プログラミング以外の知識が必要になってきます。

Pythonが書ける・・・というのはあまり求められていなくて、Pythonを使って何ができるかってところが要求されます。

なので初心者がAIを学ぶ場合は、言語の他にAIの活用そのものを教えてくれるTechAcademyのAIコースなどを利用した方がいいと思います。

まだ目的がなかったらとりあえず人気の言語を触ってみるのもアリ

プログラミングを学んでみたいけど、目的は漠然としている。あまりにも分野が広すぎて途方に暮れる。

そんな人もいると思います。むしろそれが普通です。

何がなんだか分からないんだけどとりあえずやってみたいっていう人は、とりあえず人気の言語を触っておくと仮にエンジニア転職したいと思ったときに選択肢が広くできます。

出典:stackoverflow Developer Survey Results 2019

上の図はstackoverflowという技術サイトが集計した人気テクノロジーランキングです。

この図の中で赤枠で囲んだ言語なんかおすすめです。JavaScriptは前述でおすすめした通り。

Javaはアンドロイドのアプリ制作や他様々なシーンで活用されていて、Java技術者は企業の求人募集も多いです。

C#は主にWindowsで動作するアプリを作るのに使いますが、環境を用意すればクロスプラットフォーム(いろんな環境で動く)アプリも作れます。あとはUnityと言うゲームを作るフレームワークがあるのも楽しく勉強できて良さそうな要素です。

初心者は学ぶ言語で迷わない方がいい

一つ確実に言えるのは、初心者が学習する言語であんまり迷う必要はないということです。

一つの言語をマスターすると他の言語は楽に身に付く

プログラミングは一つの言語ができるようになると他の言語もある程度楽に身に付くようになります。

プログラミングは基本的な仕組みってどの言語でも変わりません。ちょっと書き方が変わるぐらいです。

ある程度プログラムが読めるようになってくると、初めての言語でもなんとなーくやってることが理解できるようになります。

迷っている時間がもったいない

勉強時間って限られています。

「俺は暇だから一日中好きなだけ勉強できるぜ!!」って人はなかなかいないんじゃないでしょうか?

仕事から帰って家事をこなし、気が付いたら21時過ぎ。なんとか時間を捻出して勉強できるのはせいぜい2〜3時間程度でしょう。

なので使う言語に迷っている場合ではなく、1日も早く学習を初めてみるのが大事です。やってみたら見えてくるものもあります。

初心者が効率よくプログラミングの勉強をするには

初心者が効率よくプログラミングを勉強するには、教材選びも重要な要素です。

人によってどの教材が最適かは違ってくると思いますが、主な教材を紹介。

  1. TechAcademyなどのプログラミングスクール
  2. Udemyの動画教材
  3. 書店に並んでいる参考書

1から順に、初心者でも分かりやすい順です。

プログラミングスクールはいわゆる塾なので先生がいます。分からないことが質問できる環境が整っているので、独学だと挫折してしまう人や効率的にプログラムを勉強したい人はこれがいいでしょう。

【社会人向け】働きながらでも短期間でエンジニアになれるプログラミングスクールおすすめ6選の記事で現役エンジニアが選んだおすすめスクールを紹介しているので合わせてご覧下さい。

https://tanakano-aster.com/programming-school-working/

Udemyは塾という形態ではありませんが動画講師に質問メッセージを送ってやり取りすることができます。動画で教えてくれるので、環境構築の仕方などが分かりやすく、教材内の情報も常に更新されていくのがいいところ。

【現役Webエンジニアが選ぶ】UdemyのWebフロントエンドおすすめ講座7選の記事では僕がWebフロントエンドの勉強をしたときに使ったUdemyの教材をまとめています。ちょっと難易度は高めですが、[HTML/CSS/JavaScript] フロントエンドエンジニアになりたい人の Webプログラミング入門はWeb入門用として最適だと思います。

【現役Webエンジニアが選ぶ】UdemyのWebフロントエンドおすすめ講座7選 こんにちは、Webシステムエンジニアのせいや(@knkSeiya)です。 HTMLやCSS、JavaScriptをはじめReac...

書店の参考書は、ある程度わかってきた人がより詳細な部分を知りたいときに使うのがおすすめです。プログラミングって進化が早いので、参考書の情報は古くて今では使えないものも混ざっていたりします。

他にも今はprogateのウェブ講座だったり、YouTubeでもちょっとしたプログラムの解説をしている人もいます。

自分に合ったスタイルで学習を進めてみてくださいね!

まとめ:まずは簡単に動かせる言語でプログラミングの感覚をつかもう

今回は、プログラミング言語の選び方について初心者は何から学ぶのが効率的なのか紹介しました。

僕は学校でC言語からプログラミングの世界に入ったクチですが、今では主にJavaScript、PHPとJavaを使っています。

このように将来的にどの言語を使うようになるかは不定ですし、どの言語から入ったとしても2つ目からの学習コストは小さくなるので、どの言語を学ぶか迷ったら直感で決めちゃいましょう。

大切なのはどの言語を選ぶかではなくどれだけ学ぶ時間を確保できるか、です。

それでは、最後までお読みいただきありがとうございました。
少しでもお役に立てたらこの記事をシェアしていただけると僕の励みになります。

Webプログラミングの第一歩

プログラミング学習の第一歩に最適なのは、動くものを作ってみることです。

しかしプログラミング未経験の方がテキストを読みながら動くものを作るのは非常に敷居が高いです。

Udemyの講座なら実際に講師の方が動画で説明してくれるため、イメージが掴みやすくとっつきやすいです。

おすすめの講座を知りたい方はこちらの記事をご覧ください。

おすすめUdemy講座7選を見てみる

RELATED POST
プログラミング初心者向け

【プログラミング初心者向け】チームでプログラミングするときに最低限気を付けたい3つのこと

2018年4月4日
Tanakano*
一つのプロジェクトとして複数人でプログラミングをするときに、 最低限気を付けなければいけないことがあります。 それは以下の3つ。  …