本記事は
プログラミングを覚えるコツ
を解説します
現役エンジニアが
技術に詳しくなるためのヒミツ
を徹底解説します!
覚えるコツを
知らないと今後のスキルに大きく差
がつきます
対象読者
- プログラミングが覚えられない人
- 覚えるコツを知りたい人
- 稼げるエンジニアになりたい人
プログラミングを覚えられる人は、
覚えるコツを知っています!
↓覚えるコツを解説します
私もエンジニアになるまで
知らなかった覚えるコツ
をまとめました
↓
- プログラミングを覚えられない原因
- プログラミングを覚えるコツ
プログラミングを覚えられない原因:7つ
プログラミングを学ぶ上で
覚えられない原因を把握しましょう
プログラミングを
覚えられない原因はこちら
↓
覚えられない原因:7つ
- 言語単体でプログラミングを学ぼうとしている
- フレームワークを学んでいない
- 1つのプログラミング言語に固執している
- 必要ないことまで覚えようとしている
- 論理ロジックの組み合わせを覚えていない
- エラーを読まない
- 本を使って学ぼうとしている
いくつ当てはまりましたか?
- 0個 → 合格です!問題なし!
- 1〜3個 → 改善しないと伸び悩みます…
- 4〜7個 → まず直した方がいいです!!
こちらの記事で、一つ一つ解説していきます。
覚えられない原因①…言語単体でプログラミングを学ぼうとしている
覚えるコツ①…言語単体ではなく、フレームワークも一緒に覚える!
プログラミングは、単体のコードでは利用しないことが多いです。
webシステムのプログラムは、フレームワークを利用して実装していることが多いためです。
しかし、プログラミングを学ぼうとしている人が読む本やプログラミングに関する多くの本は、記述方法やクラスの書き方等が記載されている物が多いです。
例えば、Rubyのプログラミングの本であればRubyの基礎文法、Javaのプログラミングの本であればJavaの基礎文法などです。
これでは基本的な文法は記載あるけど、webシステム開発を主眼においたプログラミングの勉強は完結しません。
覚えられない原因②…フレームワークを学んでいない
覚えるコツ②…フレームワークを重点的に学ぶ
プログラミングを覚えることは、フレームワークを覚えることです。
プログラムの基礎文法がわかっても、システムを組むことや設計を行うことなどはかなり難しいでしょう。
逆にフレームワークを理解していれば、細かいプログラムの文法が分からなくても、システムを調べながら組むことは用意です。
【覚えるコツ】
細かい文法はフレームワークを学びながら学ぶ!
覚えられない原因③…1つのプログラミング言語に固執している
覚えるコツ③…複数のプログラミング言語に触れること!
プログラミングは『フレームワーク』と『フレームワークの基礎文法の勉強』の両方を行うことが必要です。
どうやってフレームワークを選ぶのか?ということが気になりますよね。
フレームワークの選び方は、こちらです。
webアプリケーションの場合
- Ruby on Rails(難しいけどチュートリアルしっかり)
- Spring Boot(フロントエンド、バックエンドを分けてかける)
- NuxtJS(フロントエンドアプリケーションを作りたい場合)
iPhoneアプリの場合
- expo(React Nativeで書くフレームワーク。かなり楽)
このような感じで選んでいくといいかなって思います。
覚えられない原因④…必要ないことまで覚えようとしている
覚えるコツ④…まずは動くコードで少しずつ学ぶ!
動くプログラムを用意するためにはなかなか骨が折れる作業です。
プログラミングを学ぼうとしている人が陥ってしまう事柄で『一からプログラムを書いて動かそうとする』ということがあります。
これには罠(詰まって心が折れてしまうポイント)があり、プログラムの動く環境を用意したり、依存関係のあるライブラリを順次インストールしたりと大変な点があります。
【覚えるコツ】
プログラムを動かしながら覚えること!
覚えられない原因⑤…論理ロジックの組み合わせを覚えていない
覚えるコツ⑤…if, forの論理ロジックの使い方と組み合わせを理解する!
プログラミングで行う処理の実装の本質は、論理ロジックを組むことです。
論理ロジックの例
- AならBを表示する
- BならCの処理を行わない
条件分岐を行い、データとデータをつなげてシステムを作ります。
そのために必要なのは、データの形を定義する型や、関係のある単位でプログラムをまとめるクラスや、振る舞いを定義したメソッド、それらを使ってロジックを組むための条件分岐が最低限必要になります。
覚えられない原因⑥…エラーを読まない
覚えるコツ⑥…エラーは絶対に読むこと!
エラーが起きた時は内容を読みましょう!
よくエラーを読まないで質問したり、詰まってしまう人がいますが、ほとんどの原因はエラーに書いてあります。
しかし、初心者やプログラミングを覚えることができない人は、エラー内容を読むことができないで悩むケースが多いです。
【覚えるコツ】
エラー文は絶対に読む!
覚えられない原因⑦…本だけで学ぼうとしている
覚えるコツ⑦…学習には本よりも、動画やwebサイトを使う
プログラミングにおいて、本を使って学ぶことはおすすめできません。
本だとコピペができない上、出版された年から時間が経っているとプログラムが更新されていることがあり、動かないということがあります。
webにおいても同様のことが起こる可能性はありますが、限りなく少なくすることができます。
【覚えるコツ】
本だけで学ばないこと!
プログラミング覚えるコツ:6つ
プログラミングを覚えるコツはこちらです。
プログラミングを覚えるコツ:6つ
- フレームワークを学ぶ意識を持つこと
- 複数のフレームワークを試して学ぶこと
- 動作するプログラムをもとに動かしながら学ぶこと
- いっぺんにいろいろ学ぼうとしないこと
- 英語のエラーも読むクセをつけること
- 本ではなくweb上の公式チュートリアルで学ぶこと
コツ1. フレームワークを学ぶ意識を持つこと
プログラミングの学習はフレームワークの使い方 + フレームワークの言語の基礎文法です。
フレームワークの勉強をしながら、プログラムの勉強を行う。
この流れを行わない限り絶対にプログラミングを覚えることはできません。
代表的なwebアプリケーションフレームワークは、こちらです。
- Ruby on Rails(フレームワークの言語 … Ruby)
- Spring Boot(フレームワークの言語 … Java)
- NuxtJS(フレームワークの言語 … Javascript)
- NextJS(フレームワークの言語 … Javascript)
- Laravel(フレームワークの言語 … PHP)
- Cake PHP(フレームワークの言語 … PHP)
これらのどれかを覚え始めましょう。
おすすめは、Spring Bootです!
おすすめのフレームワークの勉強方法は、こちらです。
おすすめの勉強方法
1.webの教材を理解しなくてもいいから、まずは動かす
2.動かすことができたら、分からない箇所の理解を深める
3.動いているコードを自分なりに変えてみる
Ruby on Railsが流行ではありますが、習得するのに結構難しい点が多いので、Spring Bootから始めるとすんなり始めることができると思います。
コツ2. 複数のフレームワークを試して学ぶこと
1つのフレームワークにこだわらないで、いろいろ試してみることをオススメします。
フレームワークの共通の書き方や、フレームワークごとに違う考え方などを学ぶことが理解を深める鍵になるので、是非いろいろやってみましょう。
このようにいろいろやることで、プログラミングを覚えられないということがなくなってきます。
コツ3. 動作するプログラムをもとに動かしながら学ぶこと
まずは動くコードを用意して、動いているコードを元に理解を深めましょう。
動くコードを用いることで、環境によるつまりポイントや依存、タイプミスなどのケアレスミスを防ぐことができます。
まずはサンプルコードを動かし、少しずつ手を加えて実装を進めるというのはよくある話です。
コツ4. いっぺんにいろいろ学ぼうとしないこと
最低限のことを理解していれば、分からない箇所は調べながら書くことができるので、このポイントだけ抑えましょう。
オブジェクト型、データ型を覚える
→ データの形を把握できる
クラスの書き方を覚える
→ データのまとまりの定義の仕方がわかる
メソッドの書き方を覚える
→ 振る舞いや、ロジックをまとめることができる
条件分岐を覚える
→ これらを使って、処理の流れを作ることができる
コツ5. 英語のエラーも読むクセをつけること
エラーを読まない人が多い理由の一つとして、エラーが英語で書かれているからということが多いです。
プログラミングをしている際に起きるエラーにおいて、原因が書いてある箇所に関しては専門的な英単語が用いられていることが多いですが、エラーの周りの記述では簡単な英単語が利用されいてることが多いです。
こちらはよく見かける英単語の例です。
undefined … 定義されていない
→メソッドや変数の定義し忘れが多い
not found … 見つからない
→メソッドや変数の定義し忘れ、データがないことが多い
unauthorized … 権限がない
→アクセスしようとしているものに関する権限が不足している。もしくは認証の設定を行っていない
unavailable … 利用できない
→意図した利用方法とは異なる利用方法で使おうとしている
timeout(connection timeout) … 時間切れ
→アクセスしようとしたけど、待っている時間が切れた。自分がアクセスできる箇所にいないか、アクセス先のシステムが止まっているなど。
これらを覚えていれば大抵乗り越えられるかなって思います。
あとは、メソッドが出す例外(Exception)などを理解できると良いですが、それは応用編なのでまずはこちらの基本的な英単語を覚えて、分からない英単語は調べてボキャブラリーを増やしましょう。
コツ6. 本ではなくweb上の公式チュートリアルで学ぶこと
webで学ぶコツは、公式のチュートリアルを行うことです。
多くのフレームワークにおいて、公式のチュートリアルが用意されています。
これらはフレームワーク開発者自身がフレームワークの普及を目的として用意した物で、動くことが前提で作られています。
そのため、チュートリアルを行うことがオススメです。また有名なチュートリアルを用いて勉強を進めることも良いでしょう。
Ruby on Railsのチュートリアル
→Railsチュートリアル
Spring Bootのチュートリアル
→Spring ドキュメント
NuxtJSのチュートリアル
→NuxtJSチュートリアル
Expoのチュートリアル
→Expoチュートリアル
また、私もコピペでiPhoneアプリを作成することができるチュートリアルを用意しています。
iPhoneアプリを作ってみたいけど、作ったことがない人は利用してみてください。現在は特別に第一章を無料公開しています。
【コピペで入門】React Native x Expoで作るRSSリーダーアプリ(初心者向け)
プログラミングを覚えられない人が知らない7つのことのまとめ
今回は、プログラミングを覚えられない人が知らない7つのことと言うことで記事を書きました。意外に知らなかったことが多いのではないでしょうか?特にプログラミングを覚えることはフレームワークを覚えることに関しては、私の周りでも同じ意見を持つ人が多いので、是非意識してみてください。