プログラミング

【文系でもOK】プログラミングの勉強法3選+メリットデメリット

この記事は、

  • プログラミングの勉強を始めたいけどどう勉強すれば良いかイマイチ分からない
  • 自分の予算や時間に合わせた適切なプログラミング勉強法が知りたい

という方におすすめです。それに加えて、最初に

  • プログラミングでやりたいことはまだ分からないけど、最初にどの言語に手をつけるべきか分からない

という抽象的な質問にも答えていきます。それでは解説に移っていきます。

前提 : 初めて学ぶ際のおすすめプログラミング言語

もしみなさんがプログラミングで何をするかまだ決めていない場合、以下の3つが候補として挙げられます。

  • JavaScript
  • Python
  • Java

の3つです。判断基準は、

  • 学習のしやすさ(後述)
  • 難易度
  • 現在の需要の高さ(求人数など)
  • 将来における需要

の4点です。それぞれ見ていきましょう。

JavaScript

JavaScript
  • 学習のしやすさ : [star rate="4.5"]
  • 難易度(高いほど星が多い) : [star rate="2.5"]
  • 現在の需要の高さ : [star rate="3.5"]
  • 将来における需要 : [star rate="3.5"]

後述するJavaと名前は似ていますが全く別の言語です。Webの開発に強く、HTMLやCSSなどと並んで使用されることが多いです。

とは言っても、Web開発以外でも力を発揮できるため、最初に学ぶ言語としては真っ先に挙げられる言語です。

Python

Python
  • 学習のしやすさ : [star rate="4.0"]
  • 難易度 : [star rate="3.5"]
  • 現在の需要の高さ : [star rate="3.5"]
  • 将来における需要 : [star rate="4.5"]

Pythonはデータサイエンスなどの領域で強力な言語です。そのため、統計や確率などの知識があればフルに使いこなせる一方、やや理系色の強い言語です。

ただ、需要の伸び率が非常に高く、これからどんどん勢力を増していく言語になる可能性が高いので、文系の方でも触れておく価値はあります。

Java

Java
  • 学習のしやすさ : [star rate="4.5"]
  • 難易度 : [star rate="4.0"]
  • 現在の需要の高さ : [star rate="5.0"]
  • 将来における需要 : [star rate="3.5"]

Javaは現在最も求人数が多く、多種多様な用途で使用されている言語です。その上学習材料が多いのも利点です。

需要は微妙に減少していますが、すぐになくなることは考えにくいので、そこら辺の心配をする必要はないです。

結論 : プログラミング言語選びで考え込む必要はない

ざっくりと解説してみました。どのプログラミング言語を学ぶかという点に関しては、考えすぎる必要はありません。なぜなら今回紹介した3つの言語は

  • 使用用途が広く充実している
  • 言語間で莫大な違いがあるわけではない

からです。後者に関しては、世界の言語を例にして話してみます。

今回挙げた3つの言語の違いは、「日本語とアラビア語と英語」というより、「スペイン語とイタリア語とポルトガル語」くらいの違いなんだな〜という程度の認識で大丈夫です。

つまり、万が一「言語の選択失敗した」と思っても、ある程度勉強していれば他の言語の学習がスムーズにいく場合が多いからです。

この段階でどの言語にするかは決めなくても大丈夫です。これから話す内容をもとに判断できると思います。

プログラミングの勉強法3選

それではこれからプログラミングの主な3つの勉強法を紹介します。勉強法の結論は以下の通りです。

プログラミングの主な3つの勉強法
  • 書籍
  • オンライン講座
  • プログラミングスクール


それぞれのメリットデメリットも踏まえて解説するとともに、おすすめの本や講座、スクールも紹介するので気になったものは是非どんどんチェックしてみてください^^

書籍

書籍
  • メリット
    • コストを圧倒的に抑えられる
    • 場所に縛られない
    • 自分の頭で問題処理を繰り返すことにより実力がつく
  • デメリット
    • 上達に時間がかかる
    • 挫折率が非常に高い
    • 情報が古い可能性あり

最も価格を抑えることができるのが書籍での勉強です。場所に縛られないという強力なメリットもありますが、粘り強さも獲得できます。書籍によってはコードを表示してくれて、それに沿って書いていけば自分のPCでも実行することが可能である点も良いです。

一方、デメリットで「挫折率が非常に高い」というのがあります。挫折したら元も子もないですよね...

挫折してしまう主な原因は、

  • 質問できない
  • バグ処理が難しい
  • モチベーションが維持できない

です。特に2番目のバグ処理は、初心者のプログラミング学習における最も高い壁の一つです。

PCの画面上でエラーメッセージが吐き出されることがありますが、仮にそれをコピペして検索しても解決しないことの方が多いです。結局最後は自分の力でなんとかしなくてはなりません。

下手すると一つのエラーの処理に何時間、何日という時間を要する場合があります。ここで挫折してしまう、プログラミングがつまらなくなってしまう人が多いです。

書籍は併用して使うべき

書籍はコストが安いというメリットもありますがデメリットを考えると書籍のみでの勉強はやはり不安です。

そこで、書籍を使う際は、

  • 書籍 + オンライン講座
  • 書籍 + プログラミングスクール

という使い方がおすすめです。そうすることにより、挫折率を低く抑えることが可能になります。

おすすめの書籍

今回紹介した3つの言語でのおすすめ書籍をそれぞれ紹介します。僕は全て読んだわけではないので、その場合はAmazonの星評価、評価数、カスタマーレビューの3つを参考に評価の高いものを選出しました。

今回紹介する書籍は全て入門編です。

JavaScript

created by Rinker
SBクリエイティブ
¥2,728 (2020/09/23 00:54:50時点 Amazon調べ-詳細)
Python

created by Rinker
¥2,640 (2020/09/22 16:27:36時点 Amazon調べ-詳細)
Java

created by Rinker
¥2,860 (2020/09/22 16:40:26時点 Amazon調べ-詳細)
書籍を使って勉強するのにおすすめな人
  • オンライン講座やスクールと書籍を併用して使い、理解を深めたい
  • プログラミングに少しでも触れたことがある(バグ処理や理解のスピードで有利)

オンライン講座(講義型)

オンライン講座(講義型)
  • メリット
    • 場所に縛られない
    • 最適化された学習手順を踏むことで上達速度がアップする
    • 一つの講座である程度のレベルまで到達できる
    • 情報が新しい可能性が高い
  • デメリット
    • 挫折率は低くない
    • バグ処理などの解決は難しい

続いてオンライン講座型です。場所に縛られないのは書籍と同じですが、それ以外にも大きなメリットがあります。

それは「ある程度レールが敷かれている」という点です。もちろん書籍でも

  • 入門編→基礎編→応用編→実践編

などのように道のりを提示してくれている場合もありますが、数としては少ないです。多くの場合は途中の重要なところが抜けていたり、「基礎編終わった。次どうしよう」とAmazonや書店の中を長い間さまよう必要があります。

その点、オンライン講座では入門から実践までのレールがしっかりと敷かれている場合が多いので安心して迷うことなく次のステップへ進めます。

一方、デメリットとしては、書籍同様にバグ処理でつまづく可能性があります。オンライン講座はコードを実際に提示したり書いてくれる場合が多いのですが、それを自分で写すときにミスをする可能性があります。十分注意しましょう。

おすすめのオンライン講座 : Udemy

Udemyの広告を見たことがある方はちらほらいるかと思います。プログラミングに限りませんが、オンライン学習のプラットフォームとしてはかなり有名でしっかりしています。

今回は先ほど紹介した3言語でそれぞれおすすめの講座を紹介したいと思います。

JavaScript

>>[HTML/CSS/JavaScript]フロントエンジニアになりたい人のWebプログラミング

「JavaScriptなのにHTMLとかCSSとかなんだ??」と思う方もいるかもしれません。HTML、CSS、JavaScriptはセットで登場することが多く、これらはWebサービスの開発でよく用いられます。

「3つの言語も覚えなきゃいけないのか〜」と悲観する必要はないです。1つ1つはそれほど重くないのでスムーズに進めると思います。

Python

>>現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル

ちなみに↑の講座は僕も受けています。書籍に書いてあるようなことだけでなく、コーディング(コードを書くこと)やシリコンバレー関連の「今」を知ることが出来るのもおすすめポイントです。

Java

>>【 5日でできる】はじめての Java プログラミング入門

Javaは汎用性が高いのでその分「入門→応用」といったスムーズな路線を引くことは若干難しいのかもしれません。

基礎を習得した後は用途別で講座を探してみたりするのが良いかと思います。

オンライン講座で勉強するのに向いている人
  • 効率よく実力をつけたい
  • お金をあまりかけたくない


オンラインでのプログラミング独学で挫折しないためのポイントを以下の記事にまとめてみました。

プログラミングスクール

プログラミングスクール
  • メリット
    • 学習効率が高い
    • 様々なことを聞けるため、バグなどで詰まることも少ない
    • 挫折しにくい
  • デメリット
    • コストがかかる
    • 場所に縛られる(例外あり)

最後はプログラミングスクールです。プログラミングの最大の利点は一人ではないという点です。

メンター(教える人)の方などと一緒に進めることが出来るので、

  • 何をどう学習すれば良いか分からない
  • バグ処理が出来ない
  • モチベーションが下がる

などの負の要素を断ち切ることができます。学習効率はダントツで高いです。

しかし、それゆえのデメリットとしてはやはり値段が高いということです。総額で計算すると、安くても15万、最頻値は肌感で20〜30万円です。

分割支払いがあるところも多いですが、最初にある程度のモチベーションがあったほうが良いです。

また、「スクール」という名のイメージ通り、場所的な制約がある場合が多いですが、最近はオンラインで完結するスクールも増えてきているのでその点はあまり気にしなくて良いです。

実際にプログラミングスクールを体験してみる

最後にプログラミングスクールを紹介します。世の中にはたくさんのプログラミングスクールがありますが、知名度や学習できることの多さなどを考慮して2つだけ紹介します。

TechAcademy

TechAcademyの強みは、以下の2つです。

  • 自宅で完結できるオンライン型
  • コースの種類が豊富

自宅で完結できるオンライン型

オンラインで色々メンターの方へ質問ができたりします。これによって、地理的制限がなくなるのでネット環境が整っていれば教室に通えなくても受講可能です。

コースの種類が豊富

WebアプリケーションコースやJavaコース、Pythonコースなどは多くのプログラミングスクールにありますが、それだけでなく、

  • ブロックチェーンコース
  • AIコース
  • 動画編集コース

など、様々な種類のコースがあります。また、これらのコースをまとめたセットもあるため、選べる幅が広いです。

無料体験も実施しているので是非試してみてください。

>>TechAcademyの無料体験はこちら

TECH::CAMP

こちらも基本的にはオンラインですが教室も何校かあります。オンラインだけでの学習に不安がある+教室が住んでいるところに近い場所にある、という人はTECH::CAMPの無料カウンセリングを受けてみると良いと思います。

>>TECH::CAMPの無料カウンセリングはこちら

TechAcademyとTECH::CAMPの比較

教室に通いたい人なら問答無用でTECH::CAMPですが、オンラインで完結させる予定の人はTechAcademyに軍配が上がります。

というのも、コースやセットが充実していますし、無料体験がある分敷居が低いかなと思います。

プログラミングの勉強法まとめ

それでは今回の記事のまとめです。

  • 書籍 : 値段は安いが挫折率が高い。(2000〜10,000円程度)
  • オンライン講座 : 書籍とスクールの間。メリットが多いが質問できないのが難点(10,000〜30,000円程度)
  • プログラミングスクール : 学習方法としては上の二つよりも効率的だが値段が高い(15万〜30万円程度)


自分に合うペース・勉強法で是非プログラミングの学習頑張ってください^^

ちなみに、Udemy(オンライン講座)では、書籍よりも安い値段でコースを購入する方法があるので興味のある方は是非ご覧ください。

  • この記事を書いた人
おととらべる

おととらべる

現役理系大学生。 Programming : Java, Python 音楽活動名義はRoot Introvertです。 音楽制作でのリリース、プロモーション ByeByeCopyright -> Root Introvert - Between Our Hearts (2019年3月) AirwaveDubstepTV -> SHADOWKEY - Kiss Me(feat. Jellow) (Root Introvert Remix) (2019年10月) NoCopyrightNation(NCN) -> Root Introvert - You Don't Wanna Be Lonely(2020年2月) 7even EDM -> Root Introvert - You Don't Wanna Be Lonely(Promotion) (2020年3月、4月) InspiredByInspired -> Root Introvert - You (2020年2月) AshesToFlame Records -> Root Introvert & Isura - Reminiscent (2020年4月) 一人旅 : タイ、ラオス、ベトナム、マレーシア

-プログラミング
-, , , ,

© 2020 おととらべる Powered by AFFINGER5