「プログラミングの独学でおすすめの勉強法が知りたい!」
「プログラミングの独学は何から始めるべき?」
このように、独学でプログラミングを学びたいけど、書籍やオンライン学習サイトなど何から始めたらいいか分からない、という方も多いのではないでしょうか?
何のためにプログラミングの勉強をするのか?いつまでに習得したいのか?など、目的や目標を決めることで挫折防止に繋がり、案件獲得やエンジニア転職といった最終ゴールも達成できます。
そこで今回は、以下の内容について解説していきます。
本記事を読み終えれば、今から何をすべきかが明確になり、より効率的な学習が可能となります。
また、弊社はWebエンジニア転職を目指すプログラミングスクールRUNTEQを運営しております。
プログラミングスクールの運営で培ったノウハウを元に、独学でプログラミングを習得するための具体的な勉強法方法をお伝えしますので、ぜひご活用ください!
プログラミング学習を始める前に準備すること
まずは学習を始める前の準備についてお伝えしていきます。
具体的な手順は以下の通りです。
- 学習目的を明確にする
- 学ぶプログラミング言語を決める
- 学習スケジュールを立てる
- プログラミング学習に適したパソコンを用意する
- 開発環境を整える
学習目的を明確にする
目的がない学習は長く続けられないため、初めに明確にしておく必要があります。
学校の勉強と同じで、「なぜ英語の勉強をするのか?」「数学で学んだことをいつ使うのか?」ということを考えたことがある人も多いはずです。
学校の勉強の目的としては、「受験で良い点数をとるため」「受験に合格して希望の学校に入るため」「良い成績を残して希望する企業に就職するため」などが挙げられます。
では、あなたがプログラミングを学習する目的はなんでしょうか?
- 趣味で、Webサイトを作りたいから
- 副業で、Web開発の案件を獲得したいから
- 転職して、Webエンジニアになりたいから など..
上記のような目的が必ずあるはずです。
こういった目的がないと、途中で何のために学んでいるのかが分からなくなり挫折率が上がってしまうため、必ず学習を始める前に明確にしておきましょう。
学習するプログラミング言語を決める
学習目的が決まったら、どのプログラミング言語を学ぶのか決めていきましょう。
作りたいものとプログラミング言語の組み合わせは、以下の通りです。
- Web系:Ruby・PHP・Java・Python・Go
- スマホ向けアプリ:Swift・Java・Kotlin
- デスクトップアプリ:C#
- AI開発:Python・R・C言語
- 組み込み系:C言語・C++・Python・Java
- ゲーム開発:C#・C++
C言語やC++、Javaは人気の高い言語ですが、プログラムを動かすための特殊な処理が必要なことから、習得難易度が高めとなっています。
未経験から独学で始めるのであれば、まずは学びやすいRubyやPHPがおすすめです。
言語についてはこちらの動画でも解説しています。
学習スケジュールを立てる
学習目的と学ぶ言語が決まったら、具体的な学習スケジュールを立てましょう。
でも、何を基準に計画を立てたらいいか分からないよ…
計画を立てるのが苦手な方は、以下の手順で進めてみましょう。
- 選んだプログラミング言語の習得にかかる時間を調べる
- いつまでに習得したいか期限を決め、一日に必要な勉強時間を計算する
- 一日や一週間で何ができるようになればいいかを明確にする
例えば、習得までに500時間かかるものを4ヶ月間で学びきるとなると、1日平均約4時間の勉強が必要となります。
書籍やオンライン学習ツールを使って勉強を進めていくかと思いますので、「4時間の内に◯◯まで進める」「1週間で◯◯を作れるようになる」というように、目標を決めて取り組みます。
ただ、独学は非常に挫折しやすいため、あまり無理のない達成可能なスケジュールを組むべきです。
独学が失敗しやすい理由と対策方法については、こちらにまとめてありますので参考にしてください。
▶︎プログラミング独学の挫折率は9割!失敗しやすい理由と対策方法
プログラミング学習に適したパソコンを用意する
ここまで準備が整ったら、プログラミング学習に適したパソコンを用意しましょう。
MacとWindowsはどっちの方がいい?
MacとWindowsのどちらがいいかは、学習目的によって異なります。
- 「Mac」:Web系やiOSアプリ開発を行う
- 「Windows」:Web系以外の開発を行う
Macは、Web系やiOSアプリ開発と相性がいいため、WebサイトやWebアプリケーションの開発を行いたい方におすすめです。
一方、Windowsは汎用性が高い上に価格も安いため、Web系以外の人全員におすすめです。
なお、最低限必要なスペックは以下の通りです。
- CPU:core i5以上
- メモリ:8GB以上
- ストレージ:SSD256GB以上
これらは起動や読み込み、書き込みスピードに関わる要素ですので、妥協しない方がよいでしょう。
開発環境を整える
ここまで終えたら最後は、開発環境を整えましょう。
開発環境とは、プログラムを開発するために必要なソフトウェアなどの組み合わせのことを指します。
主な開発環境は、以下の通りです。
- コンパイラ:プログラム全体を機械語に変換する
- インタプリタ:プログラム実行時に一行ずつ機械語に変換する
- リンカ:機械語に変換されたプログラムをまとめて実行ファイル化する
- デバッガ:プログラム実行時のデバッグ(動作確認)を可能にする
これらを一つずつ使い分けてもいいのですが、未経験者がやるとなると非常に大変なので、まとめて実現可能な「統合開発環境(IDE)」の導入がおすすめです。
- 無料:Eclipse/IntelliJ IDEA/Xcode
- 有料:IntelliJ IDEA/Visual Studio
- クラウド上:AWS cloud9
無料版と有料版がありますが、基本的には無料版で十分です。
Webアプリケーションの開発をしたいという方は、クラウド上で環境構築が可能なAWS cloud9を選ぶとよいでしょう。
独学でプログラミングを習得するための勉強方法
学習をするための準備が整ったら、学習方法を決めましょう。
独学でプログラミングを習得するための勉強方法は、以下の主に3つとなりますので自分に合うものを選択しましょう。
- 書籍を購入する
- オンライン学習サイトを利用する
- YouTubeでプログラミング関連の動画を見る
書籍を購入する
書籍での学習は、プログラミング学習の王道です。
書籍で学習するメリットとしては、以下の4つが挙げられます。
- 詳細な情報が書かれている
- 初心者から上級者までレベル別の教材がある
- 1冊で体系的に学べる
- オフラインでの学習が可能
書籍は、他のツールと比べて圧倒的な情報量を持っているため、基礎学習にうってつけです。
ものによっては情報が古いことが懸念されますが、人気書籍であれば基本的には問題ありません。
まずは、初心者におすすめなものを数冊購入してみるとよいでしょう。
以下におすすめの書籍をまとめていますので要チェックです。
オンライン学習サイトを利用する
オンライン学習サイトは、利便性の高さから近年多くの人に利用されています。
オンライン学習サイトを利用するメリットは以下の4つです。
- 手軽に学べる
- オンラインで座学とコード学習が可能
- 実行環境が完備されている
- 通勤・通学中に利用可能
書籍の場合は見て学ぶ形となりますが、オンライン学習サイトでは実際に手を動かしながら進めるので、より実践的な学習が可能となります。
数あるオンライン学習サイトの中でも特に利用者が多いのが、「Progate」と「ドットインストール」の2つです。
それぞれ特徴が異なるため、詳細は後ほど解説していきます。
YouTubeでプログラミング関連の動画を見る
令和の時代になり動画の需要が高まったことで、YouTubeも学習手段の一つとなりました。
YouTubeでプログラミング関連の動画を見るメリットは以下の5つです。
- 無料で学べる
- 内容が分かりやすい
- 実際のコーディング風景を見ることができる
- エンジニアの仕事をイメージしやすい
- 学習ノウハウが学べる
YouTubeに上がっている動画で、疑問点や悩みが解決されることもあるので、プログラミング関連の動画を見ることもおすすめです。
移動時間や空き時間といったスキマ時間に見るのがよいでしょう。
ただし、情報が全て正しいとは限りませんので情報を見極める力も必要となります。
おすすめのオンライン学習サイト
独学でプログラミングを習得するのに、おすすめのオンライン学習サイトは以下の4つです。
- Progate
- ドットインストール
- Paizaラーニング
- Schoo
特に、Progateとドットインストールは分かりやすく使いやすいので、初心者の方におすすめです。
Progate
Progateは、多くのプログラミング初心者に利用されているオンライン学習サイトです。
特徴は以下の通りです。
- シンプルなスライド形式で体系的に学べる
- コーディング作業もある
- エラー内容を教えてくれる
- 環境構築やソフトのインストールが不要
- 学べるプログラミング言語が多い
Progateは、「説明が分かりやすい」「手を動かしながら学べる」「間違いを教えてくれる」「準備が不要」「学べることが多い」という5つの点が高く評価されています。
しかも、無料で一部利用することができたり、有料版でも月額1,078円とかなり安く学ぶことができます。
独学の場合は教えてくれる人がいないため学習が滞りがちですが、こういったまとまったコンテンツを利用することでスムーズな学習が可能となります。
ドットインストール
ドットインストールは、Progateと同じく多くの初心者に利用されているオンライン学習サイトです。
特徴は以下の通りです。
- 3分以内の動画レッスンで学習する
- 動画の内容を文字起こししたものも閲覧可能
- ソースコードの閲覧や比較が可能
- レッスン動画の再生速度を調整可能
- レッスン数が豊富
- 現役エンジニアに質問可能(月に5回まで)
Progateとの大きな違いは、「動画での学習」「レッスン数が多い」「環境構築が必要」の3点です。
どちらの方がいいかは人によりますが、文字よりも動画の学習が合っていて、とにかく実践的なコーディングをしていきたいという人はドットインストールが向いています。
paizaラーニング
paizaラーニングは、IT/Webエンジニア育成に特化した初心者〜中級者向けのオンライン学習サイトです。
特徴は以下の通りです。
- 3分の動画レッスンと練習問題で学ぶ
- 環境構築が不要なので5秒で始められる
- エンジニアに質問可能
- ナレーションはプロの声優が担当
- paizaが提供している就職・転職サービスが利用可能
ドットインストールと同様に3分動画での学習となりますが、環境構築が必要ないため誰でもすぐに始められます。
今まで紹介した学習サイトとの大きな違いは、「プロの声優さんがナレーションを務めていること」「可愛いキャラクターが出てくること」「ゲームスタイルの学習」の3点です。
「可愛い女の子が分かりやすく教えてくれる」「癒やしもあるから学習が楽しい」といった声も上がっているため、アニメ風の学習が好きな方にはpaizaラーニングが向いています。
なお、料金は、下記の通りで12ヶ月プランですと、1ヶ月あたり600円となるので、Progateなどよりも費用を抑えることが可能です。
プラン | 料金 | 1ヶ月あたり |
---|---|---|
1ヶ月プラン | 1,078円 | 1,078円 |
6ヶ月プラン | 4,488円 | 748円 |
12ヶ月プラン | 7,200円 | 600円 |
paizaを活用したい方はこちらから
▷https://paiza.jp/works
Schoo
Schooは、プログラミングを始めとして、マネジメントやマーケティングなど仕事で活かせるスキルを幅広く学べるオンライン学習サイトです。
特徴は以下の通りです。
- 生放送授業
- 学べるジャンルが豊富
- 講師は各業界をリードするトッププレーヤー
- 双方向の授業で直接質問が可能
- プレミアム会員なら録画授業も見放題(月額980円)
他の学習サイトと違いリアルタイムでの授業なので、分からないことがあれば直接その場で聞くことができます。
月額980円のプレミアム会員になれば録画授業も見られるようになり、後で見返すことも可能です。
ここまで4つの学習サイトを紹介しましたが、結局どれが良いのか分からないという方は、以下の組み合わせを参考にしてみてください。
- 基礎から体系的に学びたい人:progate
- 動画を見て学びたい人:ドットインストール・Paizaラーニング
- 生放送授業を受けたい人:Schoo
学習効率を高めながら学ぶ方法
学習方法にプラスしてさらに効率的に学ぶ方法もお伝えします。
こちらの方法も合わせることで、学習効率を高めながらプログラミングを習得することができます。
- メンターを探す
- アウトプットを重視する
- ChatGPTを活用する
メンターを探す
独学の9割が挫折してしまうことから、一人でプログラミングを習得するのはかなり難易度が高いことが分かります。
そこで必要となるのが、メンター(教えてくれる人)の存在です。
独学では、問題解決もモチベーションをコントロールするのも、全部一人でやらなければなりませんが、メンターがいればアドバイスやフィードバックを貰えるため、心と時間に余裕が生まれます。
どうやってメンターを探せばいいの?
メンターは、SNSやMENTAなどのサービスで探すことができるので、身近な人でプログラミングに詳しい人がいなければ、利用してみるのがおすすめです。
アウトプットを重視する
プログラミング学習に限らず、知識やスキルの定着にはアウトプット(人に教える・自ら体験する・グループ討論)が重要です。
本を読むだけではダメなの?
学習方法と定着率の関係性を表すラーニング・ピラミッドによると、読書の定着率は10%ですが、自ら体験することで75%になると言われています。
したがって、長期間かかるプログラミング学習においては、ひたすら手を動かすことが習得までの近道です。
出典:平均学習定着率が向上する「ラーニングピラミッド」とは?
さらに、効果的なアウトプットとしては、以下の2つが挙げられます。
- 写経(コードを書き写すこと)
- 実際にサービスを作ること
プログラミングにおける写経とは、ネットや本に載っているサンプルコードを、テキストエディタやプログラミングツール上にひたすら打ち込む作業のことを指します。
人間の脳は、何かを覚えようとする時、ただ目で見ているよりも手を動かすというアクションを伴う方が定着しやすい、という特徴があります。
▶︎プログラミングの上達に写経は無駄じゃない!メリットと効果的な学習方法を解説
ChatGPTを活用する
最近話題になっているChatGPTもプログラミング学習に活用することができます。
具体的な活用例は以下の通りです。
- プログラミング言語の特徴や概要を解説してもらう
- サンプルコードを記述してもらう
- コードの内容を解説してもらう
- 自作したコードを修正してもらう
- SQLクエリを作成してもらう
- プログラミング言語を他の言語に変換してもらう
ChatGPTは、プログラミングについて体系的に学ぶというより、分からないところや知りたいことを単発的に質問して解消するといった使い方となります。
独学で進めていると、「どこが間違っているのか分からない」「何回書き直しても上手くいかない」といったことが多々あります。
そんな時にChatGPTを活用できれば、すぐに欲しい回答をもらうことができるので、悩む時間を最小限に抑えられます。
▶︎ChatGPTのできること・できないこと一覧!面白い使い方も紹介
独学で挫折しないためのコツ
独学で挫折しないためのコツは以下の4つです。
- 無理な学習スケジュールを立てない
- 最初から完璧を求めない
- 質問できる環境を整えておく
- セミナーや勉強会に参加する
挫折しないためには、学習管理を徹底することが重要です。
ここでは、具体的にどのようなことに気をつけたらよいか解説しますので、これから勉強を始める人は必ず抑えておきましょう。
無理な学習スケジュールを立てない
覚悟を決めてプログラミング学習に望む人も多いですが、初めは無理なスケジュールを立てないことが重要です。
というのも、初めから頑張りすぎると、後々つまづいた時に大きく失速し、できない自分に嫌気が指してしまうからです。
例えば、趣味を全部やめて、休みもとらずにプログラミング学習に専念しようとします。
集中できる環境づくりは非常に大切なことですが、あまりに極端過ぎると息抜きができなくなってしまいます。
プログラミングの習得には数百時間〜1,000時間ほどかかるため、慣れるまでは無理のない範囲で学習を進めるのがおすすめです。
なお、学習時間の目安については、こちらで詳しく解説していますので参考にしてください。
最初から完璧を求めない
一つひとつ丁寧に進めるのもよいですが、最初から完璧を求めすぎない方が結果的に上手くいくことが多いです。
特に初心者の方は、何が重要で何が重要でないかの見極めがつきづらく、全てを完璧にこなそうとする傾向にあります。
しかし、一つひとつ細かく取り組んでいると、時間がいくらあっても足りませんし、どこがで心が折れてしまうかもしれません。
HTML/CSSが完璧じゃないから次の言語に進めない…
Rubyが完璧にできるようになったらRailsの学習を始めよう…
このように、学習が滞るほど挫折する可能性も高まりますので、分からないところは飛ばしつつ、どんどん進めていくべきと言えます。
30分考えて分からなければ、後で戻ってこれるようチェックしておいて、次に進むようにしましょう。
質問できる環境を整えておく
問題解決ができずに挫折してしまう人がほとんどなので、必ず質問できる環境を整えておくことが重要です。
具体的には、以下のような取り組みが挙げられます。
- メンターを探す
- エンジニア向けのコミュニティに入る
- 質問できるオンライン学習サイトを活用する
誰かに質問をして疑問点をすぐに解決できれば、どんどん次に進めるため、継続的な学習が可能となります。
一方で、疑問点の解決に時間がかかる状況にあると、途切れ途切れの学習となってしまい、徐々にモチベーションの低下に繋がります。
このように、学習効率ややる気といったプログラミング学習に関わる要素は、「問題解決のスピード」にかかっていると言っても過言ではありませんので、いつでもどこでも質問できる環境を整えておきましょう。
セミナーや勉強会に参加する
ある程度、知識やスキルが身についてきたら、セミナーや勉強会に参加するのもおすすめです。
実際に外部の人と接することで良い刺激がもらえるため、学習意欲向上に繋がります。
具体的なメリットは、以下の通りです。
- 実践的な知識やスキルを学べる
- 最新情報を入手できる
- 必要な知識やスキルをピンポイントで学べる
受講者同士でコミュニケーションをとるうちに勉強仲間になれるなど、良いことがたくさんあります。
独学の場合、人との交流が少なくなりがちですので、セミナーや勉強会には積極的に参加するとよいでしょう。
▶︎プログラミングの勉強仲間を作る方法とは?おすすめコミュニティも紹介
まとめ
今回は、独学でプログラミングを習得するための勉強方法や学習サイトについて解説しました。
- 独学を始める際は、学習目的や学ぶ言語、スケジュールなどを明確にしておくべき
- 勉強方法は、書籍・オンライン学習サイト・YouTubeの3つ。どの方法でも、アウトプットすることと、メンターをつけることが重要である
- 挫折しないためには、スケジューリングと進め方に注意すること、質問できる環境づくりと、セミナーや勉強会への参加が重要である
どんなに気合を入れて臨んでも、事前準備や計画性、適切な環境がなければプログラミング学習は上手くいきません。
そこでおすすめなのが、解説した勉強方法を取り入れて、挫折しないためのコツ通りに学習を進めることです。
一人では遅かれ早かれ限界がくるため、必ずメンターを探すなり、質問できる環境を整えましょう。
挫折しそうになった時や、より実践的な内容を学んでWebエンジニア転職したいと思った時は、プログラミングスクールRUNTEQの利用を検討してみてください。