どういう勉強をすればいいの?
勉強する上で知っておいたほうがいいこととかある?
プログラミングは今や人気のスキルであり、調べれば情報も多くあります。
しかし、プログラミングの勉強を始めるにあたり、初心者向けの情報が多すぎるため結局、何をどう始めれば良いかわからなくなりますよね。
この記事では、そのような悩みを疑問に対してプロ目線で何をどのように勉強すれば良いかを専門用語を使わずにわかりやすく解説します。
初心者としてプログラミング学習を始める前に知っておきたいこと
初心者がいきなりプログラミングの勉強を始めると決意しでも、そもそも「プログラミングって何なのか」、「何ができるのか」を知らないと、何をどのように勉強すれば良いかわからないですよね。
勉強を始める前に前準備としてプログラミングとは何なのか、何ができるのかを簡単に押さえておきましょう。
プログラミングとは?
一言で言うと、コンピュータへの命令です。
ご存知の通りコンピュータは人間よりはるかに頭の回転が早いです。
しかし、自分で考えることはできません。
「AI(人工知能)は自分で考えるてるじゃん」と思う人もいますよね。
AI(人工知能)も結局は「学習させる」と言う過程を経て、「自分で考えろ」と言う命令を実行しているに過ぎません。
つまり、「コンピュータに何かをさせるための命令がプログラミングである」と言う認識でOKです。
何ができる?
プログラミングとは何なのかがわかったところで何ができるかです。
ズバリ、自動処置や高速処理です。
あまりピンとこないかもしれませんが、わかりやすく言うと”電卓”を想像してもらえるとわかりやすいかも知れませんね。
どんな桁数でも一瞬で計算できますよね。
コンピュータはそこからさらに、便利なことが可能です。
例えば、レシートをカメラで読み取れば自動で計算して、自動で集計して、自動で家計簿に書き込んで、集計して日毎の金額の推移を表示し使い過ぎか節約できているかを教えてくれるといったこともプログラム次第では可能です。
理解が深まったところで次は具体的に何をどのように勉強するかに触れていきます。
初心者がプログラミングを独学で勉強するために最低限おさえとくべきポイント3つ
ここでは初心者がプログラミングの勉強を始めるにあたり最低限の必要なポイントを3つ紹介します。
ここで紹介するポイントをしっかり押さえることで、今後の勉強の仕方が変わってきますので、このフェーズはマストです。
- 何を作りたいか
- どのプログラミング言語を勉強する必要があるか
- どのような開発環境が必要か
何を作りたいか
自分がエンジニアになったときに、何を作りたいかによってプログラミング言語が変わってきます。
例えば、「ECサイトを作りたい」と思って勉強を始めても、C#と言うプログラミング言語の勉強をしていたら遠回りです。
そもそもWebに対応していないプログラミング言語もあるので、参考書を買うにしてもまずは、何が作りたいのかをしっかりイメージすることが必須です。
どのプログラミング言語を勉強する必要があるか
何を作りたいかのイメージができたら、次は作りたいものに対応するプログラミング言語の選定です。
先はど例にあげた”ECサイト”だと、PHP(ピーエイチピー)やRuby(ルビー)などで作られたりします。
スマホアプリなどはJava(ジャバ)やKotlin(コトリン)などが挙げられます。
自分が作りたいと思うものと類似いているものが世の中には必ずあると思うので、それはどんなプログラミング言語で作られているかを調べてみると、どのプログラミング言語を勉強すれば良いのかがわかります。
ここでの注意事項が1つあります。
それは、選定したプログラミング言語は市場価値があるものかどうかを調べてください。
転職サイトや副業サイトでも良いので、今から勉強しようとしているプログラミング言語の仕事がどれだけあるかの数を確認することをおすすめします。
どんなにスキルや知識があっても需要がなければ活かせません。
今後の働き方にも関わることですので市場調査も忘れずに行いましょう。
どのような開発環境が必要か
ここまでで、何が作りたいかが決まり、どのプログラミング言語の勉強をするかが決まったと思います。
その次は、作りたいものを開発するための開発環境作りです。
プログラミング言語や開発するものによって開発するためのツールやOSなど様々です。
プログラミングの勉強には実際に開発することは必須事項となるので、何が必要なのかをリサーチして自分で開発環境を作ってみましょう。
実際の仕事でも、最初は開発環境作りから始まるので、この作業に今のうちから慣れておくことは大事です。
初心者向けプログラミングの勉強方法(4ステップ)
ここまでで、何を作る予定で、どんなプログラミング言語を勉強して、どんなか開発環境が必要かが理解できていると思ういます。
それを踏まえて、ここでは具体的にどのように勉強を進めていけば良いのかを4つのステップでわかりやすく解説していきます
- テキストを購入する
- 開発環境を構築する
- プログラムを書いてみる
- 書いたプログラムの内容を理解する
テキストを購入する
まずは、テキストを購入することをおすすめします。
現在ではYoutubeやGoogleなどで検索すればわからないことなんてありません。
しかし、こう言う場合にプログラミングあるあるとして、こう言うことが起こります
「なぜわからないかがわからない」
私が新人教育担当をしていたときに実際によくあったことです。
そもそも基礎知識も経験もないため、「わからないことはわかっているが、何がわかれば問題が解決するかがわからない」といったジレンマがよくありました。
そういった状態では、検索で調べることもできませんよね。
そういったジレンマに陥らないためにも参考書は1冊はあると便利です。
更に言うと、順を追って勉強できるので効率も良いです。
開発環境を構築する
参考書を購入すると、その参考書で紹介しているプログラミング言語の開発環境の構築方法が記載されていることが多いです。
参考書に記載されている手順は、基本的に誰でもできるようにな手順で書かれています。
参考書を見つつ、それでもわからなかったらGoogleなどで検索して調べながら行いましょう。
プログラミングの開発環境ってなに? 難しそうだけど何をすればいいの? どうすればいいの? プログラミンの勉強を始めるにあたって一番最初の壁が、「プログラミングの開発環境の構築」です。 この記事では[…]
プログラムを書いてみる
開発環境の構築が完了したら、いつでもプログラミングが可能です。
プリグラミングは物作りです。
勉強するにしても、ノートに上手にまとめるより実際にプログラムを書いてみるほうが圧倒的に理解度も高まります。
参考書に書いてあるプログラムを見よう見まねで書いてみて起動してみましょう。
起動の仕方も参考書に書いてあるはずです。
プログラミングの勉強を始めてみたけど最初は何を作ればいいの? 難しいことはしたくないし、簡単にアプリを作る方法とかないかな? どのような手順で作ればいいの? プログラミングを身につける上で一番効率できな[…]
書いたプログラムの内容を理解する
見よう見まねでもプログラムが書けて、起動してみて動きがわかったと思います。
ここまできたら、後は書いたプログラムが何をしているかを理解するだけです。
起動してどんな動きをするのかは実際に見て確認しているので理解もしやすいと思います。
”百聞は一見にしかず”で、経験することは何よりも近道だと思います。
プログラミング学習で挫折してしまう主な3つの理由
最後にプログラミングの勉強で挫折してしまう主な原因を3つ紹介します。
挫折してしまう理由を知ることで、自分がそうならないために予防できるので知っていて損はないです。
- 作りたいもののイメージができていない
- いきなり難易度が高いプログラミング言語を選んでしまっている
- 形から入ろうとする(高額機材の購入など)
作りたいもののイメージができていない
前述でも触れましたが、プログラミングは物作りです。
物作りなのに作りたいものがないと言うことは、本末転倒ですよね。
「DIYしたいけど何作ろう?」といっているのと同じです。
ほとんどの場合は、「台が欲しいからDIYしよう」と言う考えから物作りは始まるはずですよね。
いきなり難易度が高いプログラミング言語を選んでしまっている
作りたいものがたまたま難易度が高いと言うことはあるので、仕方ないとは思います。
しかし、いきなり挑戦するのではなく順序はあると思います。
例えば、Webページなどでロード中のアイコンがグルグル回る動きを見たことがあると思います。
あの処理1つとっても、非同期通信といった技術が使われています。
同期通信がわからないのに非同期通信が理解できるわけないです。
そもそもプログラミング初心者にとっては「何それ美味しいの?」といったレベルの話ですよね。
形から入ろうとする(高額機材の購入など)
大人は特にやりがちな人も多いと思います。
例えば、いきなり超ハイスペックはPCを購入するといったことが挙げられます。
性能が良いことは悪いことではないですが、家庭用でもハイスペックはPCだと、大体30万円〜60万円ほどします。
プログラミングは知識やスキルであって持ち物に依存するものではありません。
極端な言い方すれば、1万円〜5万円程度の低スペックなPCでも開発を行うことも十分に可能です。
まとめ(初心者向けプログラミングを独学で勉強する方法)
初心者がプログラミングを独学で勉強する方法を紹介しました。
前述では触れてはいませんが、インターネット環境が必要なのかと言う心配もあるかと思います。
そのことに関してもまず気にしなくても良いです。
必要ないケースもありますし、絶対に必要なケースはほとんどないです。
Web系の開発をするにしても、インターネットをつないでなくても開発することは可能です。
まずは「知ること」が大事です。
プログラミングは一見難しいように思われがちですが、実際に知るとプログラミング自体はそんなに難しくはないです。
検索すばば大抵のことはヒットします。
あとは使い手がその情報をどう料理するかです。
新しいことを始めるガッツがあれば、プログラミングの勉強も乗り切れるはずです。
エンジニアは常に人手不足しているので、時間がかかってもエンジニアにはなれます。
資格も必要ないので、ある程度勉強して「行ける」と思ったタイミングで就職しても良いと思います。
最初は誰でも素人として扱われるので気楽に肩肘張らずにマイペースに勉強することをおすすめします。
知識をつけた後は、次にどのようなスキルを身につければよいのかということですよね。
プログラミングの知識は必須ではありますが、実際にシステムエンジニアはプログラミングの知識だけでは仕事はできません。
では、どんなスキルが必要かを知る必要があります。
詳しくは以下をご覧ください。
システムエンジニアになるにはどんなスキルが必要なんだろう? どうやってそのスキルを身につければいいんだ? 未経験者がシステムエンジニアに転職する際には、どのようなスキルや準備が必要でしょうか? 以下[…]