【効果的な独学を伝授】プログラミングの始め方!

これからプログラミングをおぼえたい!
独学でプログラミング学習の始め方が知りたい。
こんにちはカツヤです。最近プログラミングを始めようとする人が増えていますね。
「エンジニアをめざしたい」「作りたいWebサービスがある」「プログラミングを覚えて起業したい」などなど、プログラミングを始める理由は、さまざまだと思います。
プログラミングスクールに通って勉強するのもいいけど、独学で勉強するのもぜんぜんありです。
なぜなら、スクールは高いしどうしても受け身の学習になりがちだから。独学で勉強してWebサービスも作れるし、エンジニアになる事もできます。実際にぼくも独学でプログラミングをはじめてエンジニアになれました。
でも、実際に独学でプログラミングを始めようとして、一体なにをどう学べばいいのか分からない人も多いでしょう。
そこで今回は現役エンジニアのぼくが「プログラミング学習を独学で始める方法」について解説いたします。独学でプログラミングを始めようとしている方は必見です。
もくじ
プログラミング独学のメリット

独学のメリット①安い
プログラミングスクールと比べて独学のメリットは、何と言っても安い事です。
スクールの月謝はだいたい10万円くらいしますからね。それに対し、独学はせいぜい本に一冊2000円~3000円、高くても5000円くらいです。
独学の方が全然コスパがいいです。
独学のメリット②就活でイメージが良い
未経験からプログラミングを学びエンジニアに転職する場合も、独学の方がイメージが良いとの声もあります。これは「自己管理ができ自ら学習が進められる人」という印象を採用企業さんに与える事ができるからです。
独学のメリット③自分で解決する能力が身につく
プログラミングって実際にコーディングしている時間よりも、調べている時間の方が圧倒的に長いです。
それはエンジニアの業務やアプリ制作でも同じで、ほとんどが調べている時間になります。つまり、プログラミングって分からない事を自分で調べて解決する能力が非常に大事になります。
スクールのように分からない所をすぐに聞ける環境は、初学者の方が挫折しない為には良いかもしれません。
しかし、実際の業務やアプリ制作では分からない所を聞ける人はいません。また、同僚や先輩のエンジニアに聞いてばかりの人は間違いなく怒られます。
エンジニアになりたいなら、自分で解決する能力は必須です。独学でこの自己解決力を身につけることができます。
これらの理由から、独学でプログラミングを習得することは大きなメリットがあります。
それでは次に、具体的な独学でのプログラミングの学習方法を紹介いたします。
ステップ①学習するプログラミング言語を選ぶ

まずはプログラミングで何を作りたいのか決めましょう。あなたが何を作るかによって、学ぶべきプログラミング言語が変わります。
よく、「プログラミング初心者はHTMLを学ぶべき」なんて声がありますが、そんなのは無視していいです。
そもそも、初心者向けのプログラミング言語はありません。自分が何を作りたいかでプログラミング言語をチョイスしましょう。
目的別に学ぶプログラミング言語をまとめましたので、下記をご参照ください。
ホームページ作成したい
HTML、CSS、Javascriptなど
正確に言うとHTMLはマークアップ言語、CSSはスタイルシート言語でプログラミング言語ではありません。
文字の大きさ、色、配置などブラウザでホームページをどのように表示するかを扱う言語です。
Javascriptはブラウザ上でWebページに動きをつけるために必要な言語です。たとえば画像のスライドショーやアラートを表示したりします。
Webアプリケーションを作りたい
HTML、CSS、Javascript、PHP、Rubyなど
たとえばTwitterのようなWebアプリを作りたいのであれば、PHPやRubyなどのバックエンドの言語の習得も必要になります。
バックエンドの言語でサーバーのデーターベースとやり取りをして、ユーザー情報や画像を保存したりします。
プログラミング言語に加えてコンピューターサイエンスの基礎知識も勉強しておいた方が良いです。
スマホアプリを作りたい
Kotlin、Swift、Flutterなど
AndroidアプリであればKotlin、iOSアプリであればSwiftです。FlutterはiOSとAndroidのアプリが開発できる、モバイルアプリフレームワークです。FlutterはDartという言語を使って開発しています。
最近は個人でもスマホアプリをリリースしている人は多いです。
Google PlayやApp Storeでアプリを配信する事もできます。ひとつ注意していただきたいのが、WindowsのPCではAndroidのアプリ開発はできますが、iOSのアプリ開発をする事ができません。
MacのPCではAndroidとiOSアプリ両方開発する事が可能です。
ゲームを作りたい
Unity、Unreal Engine、C#、C++など
ゲーム開発をするならUnityやUnreal Engineなどのゲームエンジンの習得が、プログラミング言語の他に必要です。
ゲームエンジンとはゲームを作るソフトのようなもの。
UnityであればC#、Unreal EngineであればC++のプログラミング言語になります。
ゲームはスマホゲームとしてGoogle PlayやApp Storeでアプリを配信したり、ホームページに公表したりできます。
多くの人が個人ゲーム開発者として作品をリリースしています。
ステップ②プログラミングの基礎を学ぶ

さて、どんなプログラミング言語を学ぶか決めたら、さっそく学習を開始しましょう。
学習方法は本でも動画でも、自分に合っているなら何でも良いです。それぞれの学習方法にどんな特徴があるのか、簡単にまとめましたので以下参考にして下さい。
YouTube
YouTubeには無料で良質な教材がそろっています。
「学びたいプログラミング言語+基礎or入門」などでYouTubeで検索してみましょう。
例)HTML 基礎
例)PHP 入門
また、英語で検索した方が情報量も多く、良質なチュートリアルを見つけられる可能性も高まります。
「PHP how to」などで検索してみてください。
英語に抵抗のない方におすすめです。英語が得意でない方も一度、英語のチュートリアルをトライしてみる事をおススメします。
動画で実際にプログラミングをしている所がみれるので、英語があまりわからなくても理解できます。
書籍
学びたいプログラミングの本を買って勉強する方法です。
Kindleでも実際の本でも構いませんが、購入をする前に内容を見て、自分に合った分かりやすい本を買う事が大事です。
また、本はネットの情報と違い、一度出版された内容が変更できません。
本の情報が古くなっている可能性もありますので、最新の書籍を買う事をおススメいたします。
Udemy
Udenyはオンライン学習サービスです。教材によっては動画の他にテストなどもついています。
学習に特化した有料版のYouTubeといったところでしょうか。
値段は教材によっていろいろですが、だいたい1万円前後が相場の様です。
新規登録キャンペーンなどの割引中は約80%もオフなので、セール中に購入するのがおススメです。
ドットインストール
Udemyと似ていますが、同じく有料のオンライン動画学習サービスです。
こちらは月額1,080円 (税込)でのサブスクリプションになります。
一部無料でも利用できるので、一度ためしてみると良いかもしれません。
プロゲート
初心者向けのプログラミング学習サイトです。
ゲーム感覚でプログラミングが学べるので、初心者の方にも非常にとっつきやすいと思います。
スライドの講義を見てインプット学習をし、その後実際に手を動かしてアウトプット学習をする事ができ、効率的にプログラミングが学べます。
こちらも月額980円で利用のサブスクリプション制で、一部無料で利用する事ができます。
ステップ③プログラミングで何か作ろう

さて、上記の手順で一通り基礎を学んだら、さっそっく自分が作りたいサービスを作ってみましょう。
プログラミング初学者にありがちなのですが、YouTubeや本などの学習を何回もやる事があります。受験勉強ではこの方法が良かったかもしれませんが、プログラミング学習に関しては当てはまりません。
プログラミングは実戦で覚えるのが一番効率が良いです。
まず、自分が作りたいシステムやサイトの設計図を自分なりにノートに書いてみましょう。
「実装するべき機能」「どのようなデザインにするか」自分が分かりやすいように箇条書きでも、絵をかいても何でもいいです。ある程度考えがまとまったら、コードを書いて作り始めましょう。
一度プログラミングの基礎を終わらせたなら、だいたいどんな事が必要なのか分かるようになっているはずです。
コーディングをして、そこで分からない事があったらネットで調べるなり、またならった教材を見直したりしながら作りましょう。そうする事でプログラミングが一気に定着できるようになります。
独学が向いてない人は

今まで独学で勉強したけど、分からない事があって挫折した…
エンジニアをめざしたいけど作りたいものが特にない…
エンジニアになりたいから最速でプログラミングを習得したい
こんな方たちもいると思います。
確かに独学で作業をしていると、わからない事があってつまづいたときに、何時間も進まないなんてこともあります。初心者ならなおさらです。
また、作りたいものが無い方は、独学で何を作ったらよいのかわかりませんよね。そんな方たちはプログラミングスクールに行くことをオススメします。
プログラミングスクールに行けば、すぐに質問ができて解決する事ができ、最速でプログラミングを習得することが出来ます。
メンターが徹底的にサポートしてくれますので、何をどう勉強したら良いのかも指導してくれます。
オススメのプログラミングスクールは「最高品質!就職に有利なおすすめプログラミングスクール3選!」の記事に書きましたので、興味のある方は是非一読ください。
まとめ

基礎を勉強したらあとは実戦で学んでいくのが、プログラミングを学ぶのに一番効率の良い方法です。
どんどん手を動かして学びましょう。
独学をして本当にしんどいならプログラミングスクールに通うのもありです。人に聞きまくってすぐに習得することができます。
ですが、エンジニアになりたいのであれば、自分で調べて解決する能力が非常に大事になります。
実際の業務でわからない事を同僚や先輩エンジニアに聞きまくっていたら、間違いなく怒らるでしょう。
独学の良い所の一つがそういった自己解決の力が身につくところだと思います。なので、昨今の未経験からのエンジニア転職ではプログラミングスクールよりも、独学の方が評価せれる事もあるらしいです。
とはいえ、最終的には個人の実力や人柄が判断されるので、あまり気にしなくて大丈夫です。
独学でも何でもいいのでプログラミング学習をぜひ楽しんで覚えて下さいね。
おすすめ記事:秘けつを伝授!未経験からエンジニアに転職する方法を解説!
おすすめ記事:極意を伝授!独学でWeb系エンジニア転職を目指す勉強方!
おすすめ記事:最高品質!就職に有利なおすすめプログラミングスクール3選!