【プログラミングの考え方】初心者から中級者になるためのコツを紹介

プログラミングの考え方

やりたいことをプログラミングするとき、あなたは最初に何を考え、何から手をつけますか?

「まずはとりあえず書いてみよう!」と、書き始めるタイプだったりしませんか?

また、参考書やサイトを見ながら書いているはずなのにエラーが出たり、自分が思ったように動かなかったりしたとき、あなたは何をしますか?

「とりあえず検索しよう!」と、思ったことを打ち込んでいませんか?

このような考え方のままだと、なかなかプログラマーとして成長することができません。

なぜなら、このやり方ではあなたの想いがコンピューターにうまく伝わらないからです。

結果、何度もコードを書き直すことになったり、欲しい情報がなかなか検索にヒットしないなんてことも多いはず。

これは、頭に浮かんだことを行動に移すタイミングが早すぎることが原因です。

この対処法について、初心者と中級者を比較しながら解説していきます!

プログラミングの考え方(コーディング)

効率よくプログラミングするための考え方を知らないと、コーディングに時間がかかったり、仕様漏れなどを起こす原因になります。

そのたびに「あ~自分には向いてないのかも」と落ち込むこともあるかもしれません。でも、気にしないでください。

僕は会社で未経験者にプログラミングを教えていますが、最初はみんな時間がかかるものです。僕自身もそうでしたから。

ですが、早い段階で正しい考え方を身につけておいたほうが、効率よくプログラミングできるのは間違いないです。

ここからは、コーディングするときの考え方や流れについて詳しく紹介します。

初心者の場合

プログラミングを始めたばかりの初心者は、以下の手順でプログラミングしていきます。

  1. とりあえず書き始める
  2. 「なんとなくこんな感じかな~」で書いていく
  3. 思った動きになるまで試行錯誤しながらコードを書き直す
  4. それっぽく動くことを確認して完成

上を見てもらえるとわかりますが、初心者プログラマーの多くはあまり深く考えずに、いきなりコードを書き始めています。

これは、僕が会社で未経験者にプログラミングを教えているときによく見ます。

「とりあえず書かなきゃ!」という思考のほうが先に頭に浮かんでしまい、自分のやりたいことがわからなくなっています。

そのため、試行錯誤でプログラミングを進め、「あ、動いた!」という体験を繰り返しながら実装していくのです。

この考え方のままでは、いつまで経っても成長できませんし、バグ(不具合)を生み出す原因になります。

中級者の場合

では、次に中級者のプログラミング手順をみてみましょう。

  1. コードを書く前に自分が何をしたいのかを言語化
  2. 言語化したものを実装内容ごとにわける
  3. 実装内容ごとにコメントを書く(簡単な場合は書かない)
  4. コメントの下に実装していく
  5. 不要なコメントを削除して完成

中級者になると、自分が実装したい処理をしっかり理解し、言語化してからコードを書き始めます。

つまり、頭の中で先にプログラム設計をしてしまうってことです。

設計ができているので、あとはそれをコードに変換していくだけ。

これが初心者との大きな違いになります。

プログラム設計を先にしておくことで、仕様の漏れを防ぐとともにコーディングにも集中でき、結果、品質の高いプログラムを早く実装できるのです。

プログラミングの考え方(エラー)

プログラミングがある程度できるようになっても、1日に100回以上のデバッグを仕込むなんてことは普通にありますし、それと並ぶくらいGoogleを使った調査も多いです。

プログラマーであれば、そのくらい頻繁にエラーに遭遇し、その数だけ解決していくことになります。

そんなプログラマーを悩ませるエラーですが、調査方法は以下のようにシンプルです。

  • デバッグする
  • Googleで検索する

ここからは、エラーが発生してから解決するまでの流れや考え方を紹介します。

初心者の場合

初心者の場合は、エラーが出ると「何がいけないんだろう?」と疑問に思ったあと、「なんとなく」でエラー表示を読みます。

そして、「これが原因かな?」と試行錯誤し、わからなかったらGoogleで検索するという流れが多いです。

  1. エラーが発生
  2. エラーメッセージをなんとなく読む(理解はしてない)
  3. コードを修正してみる
  4. Googleで調べてみる
  5. 解決できないと1番に戻る(ループ)

Googleで答えが見つからなかった場合、1人で解決しようと悩み続け、変なループにハマってしまうことが多いです。

誰にも助けを求めることができない環境だと、挫折しやすいので気をつけないといけません。

中級者の場合

中級者と初心者の大きな違いは、「エラーをしっかり読む」ということです。

なぜなら、エラーを見ればだいたいのことは解決できるからです。

  1. エラーが発生
  2. エラーメッセージをしっかり読む
  3. エラー内容から、「コードを修正する」か「Googleで検索する」かを選ぶ
  4. 解決できないと判断した場合は、「助けを求める」か「違う実装方法に変える」

初心者の方はエラーに苦手意識を持っているので、「自分にはわからない」と先入観を持っています。

英語で書かれているので、なんとなく苦手意識をもってしまうのはわかりますが、必ず翻訳しながら読むようにしてください。

多くの場合は、エラー箇所(行数など)や原因がしっかり書かれています。

それでもわからなければ、エラー文をコピペしてGoogleで検索したり、現状の問題を言語化してGoogleで調べます。

詳しい検索スキルの上達法については、「プログラミングが上達しない?コツは検索スキルを磨くこと!」に書いてますのでどうぞ。

考え方のコツは「やりたいことを言語化する」こと

コーディングするとき、エラーを解決するとき、それぞれの考え方を紹介しました。

さきほど紹介したように、初心者と中級者とで考え方がかなり違います。

コーディング、エラー解決、このどちらにも共通している考え方のコツは、「行動する前にやりたいことを言語化する」というところです。

初心者の頃は、この言語化がなかなかできないため、すぐに移せる行動、つまりコーディングや検索から手をつけたがります。

ですが、コンピューターは空気を読んでくれません。

しっかり考えて書いたコードはしっかり動き、なんとなく書いたコードは書いた本人にもわからない動きをします。

コンピューターは自分のやりたいことを代わりにやってくれるだけなので、自分が何をしたいのか正確に理解できていないとダメなんです。

実装するにしても、検索するにしても、自分が何をしたいのかを言語化することが大切ですね。

キツネ

コンピューターは何も悪くない!むしろ、悪いのは自分の伝え方ってことだね!

また、この言語化を早いうちから練習しておくことで、SEになって設計書を書くときにも役立つはずです。

まとめ

コーディングに悩んだり、エラーにハマっても、まずは落ち着いて自分のやりたいことを言語化することが大切です。

言語化ができれば、正しくコンピューターに指示を出せるようになり、意外とあっさり問題を解決することもあります。

ただ、それにも限界はあります。1人でプログラミングしている方は、どうしてもわからずに詰まってしまうときも出てくるでしょう。

そんなときは、必ず誰かに助けを求めてください。

とくに、プログラマーを目指している方はここで挫折してしまうと、そのまま夢をあきらめてしまうことにも繋がります。

ここまで時間をかけて勉強したのに、途中でやめてしまうなんて非常にもったいないです。

挫折するくらいなら、プログラミングスクールで講師(メンター)にアドバイスをもらいながらでも、プログラマーになったほうがいいです。

スクール費を支払うことよりも、僕は夢をあきらめることが1番の損になると考えています。

テキストのコピーはできません。