プログラミングの勉強しているけどコツがつかめない。
プログラム書いていても上達している気がしない。
私も今ではエンジニアとして働いてきて10年以上で人に教える立場にもなりましたが、スクール通ってる時からプログラミングについていけず、その後の独学してましたが長いことつまづいていていました。
結論から言うと、プログラミングのコツをつかめないというのは、自分が何を理解できていないのかを考え勉強方法を見直せば解決します。
この記事では、私の経験を元にプログラミングのコツをつかむために必要な考え方と学習方法を書いていきます。
初心者がプログラミングのコツをつかめない理由
コツが掴めていない人に話を聞くと、何をすればプログラミングが上達するのか分かっていない状態になっています。
なぜそのような状態になるかと言うと、今の自分のプログラミングスキルが把握できていないからです。
私が考える「初心者」と「中級者」の違いは以下の点です。
初心者
- プログラミングの文法を学ぶ
- プログラミングに慣れる(写経=コードを書き写す)
- ロジックから考えてプログラムを一から自分で書く
中級者
- 数千行ほどのコードを書けるようになる
- 汎用的なコードを書くように意識しだす(抽象化・サブルーチン化)
- 自分のコードを説明できる(ググってコピってきたものも含めて)
この「初心者」の項目で、自分に出来ていない項目がある場合、それをクリアしていけばプログラミングへの理解が深まり上達が実感できるようになります。
そしてコツをつかめば初心者から中級者へ進む足がかりとなります。
自分で考えてプログラムを書いた経験がない人
すでに仕事している人でもコツがつかめず苦労している人がいますが、そういった人は写経でプログラミングの勉強をしてきた人が多いです。
そういった写経でプログラミングの勉強をして、就職用のサンプルシステムを作ってそのまま就職。
就職現場では、仕事に追われて今できる方法で仕事をしている人です。
そんな人は、下で説明する「ロジックから考えてプログラムを一から自分で書く」勉強法をすれば一つ階段を登れます。
本やスクールの写経についていけていない人
写経でついていけなくなる人に多いのは、文法が理解出来ていない人、コードが複雑過ぎてついていけない人です。
とくに「コードが複雑過ぎてついていけない人」がスクールでも多いです。
これは勉強方法に問題があり、写経をするときはつねに自分が写しているコードへの理解も頭で考えながら進めるのですが、先に進める事を優先しすぎてただの作業になっているケースです。
私も経験ありますが、こうなると質問しようにも何を質問したらよいかわからない状態になるため、そのまま挫折してしまう事が多いです。
その時の私は、プログラムの文法が身についていないので、簡単なプログラミング本で基礎を勉強し直しました。
そして、次で説明します「ロジックから考えてプログラムを一から自分で書く」という勉強方法をしたことで、プログラミングのコツがつかめました。
ちなみに文法勉強であれば、プログラミングの絵本がおすすめです。
本の中では一番基礎がわかりやすいです。
ロジックから考えてプログラミングをすることでコツをつかめる
実は、多くの人が「ロジックから考えてプログラミングする」という勉強方法をやっていません。
それはなぜかというと本やスクールで勉強すると、写経しかやらない事が多いからです。
写経を続けていれば、プログラムに慣れていくのでググったコードをコピペでつなげて、機能としてそれなりのものが作れたりします。
でも自分で一からプログラムを書けないので、コツがつかめていない、上達できていないと悩む事になります。
ロジックから考えてプログラムを書く勉強方法
この勉強方法は一からプログラミングを自分で考えて書けるようにする訓練です。
私も何をすればプログラミングが上達できるのかわからず、当時はHTMLとCSSメインのWeb制作の仕事に就職してましたが、プログラミング必要なところはググってコードもってきて何とか動かすような状態でした。
振り返ってみると、スクール時代からプログラミングを自分で考えて作るということをしていなかった事に気づき、写経をやめて一から自分で考えて勉強するということをはじめました。
この勉強では以下の2点を気をつけてプログラミングします。
- ロジックから自分で考えてコードを書く
- 沢山書くために、できるだけ小さいコードで学習スピードあげる
詳しくはこちらの記事で、実例コードも載せて紹介しています。
最後に
写経自体はどんな勉強でも必要なことですが、それだけで上達するということはありません。
私は写経には二段階あると思っており、
- 写経をすることでプログラミングに慣れる(プログラミング学ぶ前の下地作り)
- 写経をすることで上級者のプログラミングの組み方を学ぶ(中級者が上級者になるための勉強法)
要するに、超初心者と中級者以上の人に効果があるということです。
逆に、文法などの基礎を学びプログラミングに慣れてきた人が、次の一歩としてコツをつかみたい・理解を進めたいという場合にはあまり効果がありません。
プログラミング勉強につまっている人は、ロジックから考えるプログラミングをしてみてください。
人気記事