プログラミング初心者向け入門書をちゃんと使い倒す方法2個!

 

 

こんにちは。ナガオカ(@boot_kt)です。

 

プログラミングを始めるにあたって入門書を購入してその本で頑張る人は多いでしょう

しかし、途中でワケが分かんなくなって、

 

「あれ?こんな命令初めて見るぞ」
「でも説明ないぞ」
「もしかして既に登場してるけど読み落とした?」

前の方を探して探して…でも分からない…

やっと見つけたけど、説明読んでもサッパリ分からん

そうこうしている内に、さっきやってページの内容も分からんようになった!!!

 

あーーーもうやってられるかーーーっ!!!

 

 

ってなっていませんか?

 

そんなあなたのために、時間はかかるけれど確実にプログラミングを覚えていく方法をお教えちゃいましょう!

これは僕が実際にやってきた方法ですって言うか、今でもやってます

僕はシステムエンジニア/プログラマとして、今ちゃんと仕事していますが、新しいプログラム言語を覚える時は、今でもこの方法が一番いいと思い実践してますよ

 

ただし、簡単でラクで効率的な方法ではないですよ!

超非効率な方法です!

もしあなたが効率的な方法を求めているのなら、ここで離脱をどうぞ

 

この記事のザックリした内容
◆対象読者

  • プログラミングの学習を始めたばかりの人
  • プログラムの命令をなかなか覚えられない人
  • 入門書をやってるけれど、既に出てきた内容が頭に入らず、何回も前の方に戻ってるのでなかなか進まない人

 

◆解決できるかも知れないお悩み

  • プログラム言語の命令の覚え方
  • プログラミングの考え方の学び方

 

◆どうやって解決するか

  • 入門書のサンプルプログラムを全て手打ち(写経)します
  • 写経なのに自分で手打ちすると、きっとコンパイラエラー出しまくるので、一つ一つエラーを直す
  • 全てのコードにコメントを書きます

 

 

 

 

自分が動きヤガレ!

入門書を買ったはいいけど、まさか・・・

 

読むだけ、見るだけ

 

なんてことを、やってないっすよね!?

 

毎日テレビでプロ野球を見ているだけでプロ野球選手になった人はいません

それと同じようように、プログラミングも見るだけ読むだけでは絶対に上達しません

  • 自分の頭で考えて、
  • 自分の目でソースコードを見て、
  • 自分の手で打ち込んで、
  • 自分の手で打ち込んだソースコードを動かして、
  • 自分の頭と目で不具合原因を考えて、
  • 自分の手で不具合を直す

 

自分が動かないと上達しねーぞ!

他人にお前のソースを任せるな、
お前のその両手で打ちヤガレ!

 

メソッド1.全部写経しよう!

メソッド1-1.全てのコードをお前の手で打ちヤガレ!

入門書を買ったのであれば、サンプルプログラムが必ず掲載されています

これを全て自分の手で打ち込みましょう

「えー、しんどい・・・」
「もぅマジ無理・・・・」

とか思うなら、プログラミングの学習なんて辞めればいいじゃん!

なんでやってんの?って話

 

  • 英語を喋れるようになりたいなら、英語を喋ればいいじゃん、
  • ギターを弾けるようになりたいなら、ギターを弾けばいいじゃん、
  • 女の子と話したいなら、女の子に話しかければいいじゃん(但し、『事案』になる可能性アリ!)
  • 絵がうまくなりたいなら、絵を描けばいいじゃん

 

なりたいなら、やれ!

 

ただそれだけですよ
1日わずか25分だけでとか、毎日たった5分でとか、、、、そんな効率的な方法ばかりを探すことが一番効率悪いよ!

 

って事で、

 

効率的な方法なんて考えるな、
入門書に掲載されているサンプルプログラムは、
全ておまえの手で打ちヤガレ!

 

メソッド1-2.エラーは全て取りヤガレ!

サンプルプログラムを見ながら打ったはずなのに、まぁ、間違いだらけ・・・

すんなり動くと思うなよ!

 

「書いてある通り入力したのに、なんでエラーになるんだよ!!?」

って思ってませんか?

でもね、

  • 書き間違いは普通、どうってことない
  • 数行~十数行をゴソっと丸々書いてない
  • 順番が違っている
  • 同じコードを何故かまた書いてる

なんて事はあるあるです

↑間違いの種類を全部書いているとキリがないのでやめとくけど、まぁ、間違えること間違えること・・・
見ながら写経してるだけなのにっていつも思ってた

 

打つだけで数時間とかかかることある(もっと昔、マイコンBASICマガジンの頃なら数日かかってた)

んで、動かすのに、また何時間とか何日もかかる・・・・

 

やってられるかーーーー!!!!!(ノ`Д´)ノ彡┻━┻

 

ってなるよねぇ~(笑)

 

僕がプログラミング学習を始めた頃はもうこれがイヤでイヤでしょうがなかった
すんなり動いてくれよぉ~・・・と、いつも思ってた

でもね、いつの頃からかこの間違いが楽しくなってきた!!
マジで!

どういうことかと言うと、間違いを探すのがうまくなってきたんだよ!
エラーメッセージ見れば、どの辺りでどういう間違いをしているか大体分かるようになってた
単に経験を積んだんだろうね

最近では、

サンプルプログラム打ち込む → 動かす → サンプルプログラムを写経してるだけなのにコンパイルエラーとか実行時エラーが出る → 「はいはい、またそれね」とほくそ笑む( ̄ー ̄) → サクッと直す

っていう感じですね

 

コンパイルエラーや実行時エラーを全部直すというのは、初心者には結構難しいと思う
でも慣れるしかないんだよ
表示されるエラーメッセージを見て、考えて、直すしかない

エラーメッセージには行番号でここが悪いと指摘してくれるのでそこを見ればいい
でもたまに、エラーメッセージで出てる行番号は全く悪くなくて、全然違う場所のコードが不具合の原因なこともある

もうこれは慣れるしかない

逆に言えば、経験積んで慣れれば誰にでも分かるようになる!!!
マジで!

 

エラーは全て神が与え給うた試練だと思いヤガレ!
エラーメッセージは神の御言葉だと思って読みヤガレ!

 

メソッド1-3.絶対に動くところまでやりヤガレ!

プログラムっちゅーものは、プログラミングすることが目的じゃない
動くものを作ることが一番大切!

だから、サンプルプログラムと言えども必ず動かす!!

これめっちゃ大切!
 

特にサンプルプログラムは絶対に動くはず

たまに間違いがあって動かないことがあるけど、それも間違いを探して動かすんです!!
(自分で間違いを発見すると、メッチャ楽しいんですよ!!)

 

動かないプログラムに存在価値は無いと思いヤガレ!

 

メソッド1-4.動いたら、自分で色々改造して試しヤガレ!

動いた!
ヤッタ!
オッケー!!

 

じゃねぇーーよ!

 

そこから自分で、ちょっとだけでいいから改造してみるんですよ

ちょっとでいいです、ほんのちょっとだけでいい
コードの順番を変えるとかでもいい

なにか疑問があるなら、それを試すんです

動かなくてもいいし(こういう風に書いたら動かない事を覚えられる)、
何としてでも動かそうとしてもいい(無理矢理の力技な書き方良くないという実感を得られるでしょう)

この試行錯誤が上達の一番の近道です!

 

サンプルプログラムをプチ改造しヤガレ!

 

メソッド2.写経したコード全行に、おまえの言葉でコメント書こう!

これは結構大変です
メソッド1より難しいかも知れません

サンプルプログラムを打ち込むのはいいんですが、、、、

 

全ての行に、『コメント』を書け、書け、書くんだじょーーー!

 

もちろん、完全に理解してコメントを書くんです

以下のポイントを意識してコメントを書いてみましょう

  • 完全に理解して書く
  • 何をしているのか?
  • なぜこの処理が必要なのか?
  • なぜこの書き方なのか?違う書き方じゃダメなのか?
  • この処理の順番に意味はあるのか?順番を入れ替えるとダメなのか?

なぜコメントを書かなきゃいかんのか!?

それは、、、、

  • プログラム命令自体は理解せずに書いても、案外適当に書いても動いたりするよね
  • そもそも本のサンプルプログラムなんて動くはず
  • コメントはしっかり理解しないとかけないものです
  • 特に自分の言葉って、本当にちゃんと理解してないと書けない

コメントを書くために、ネットで調べたり、本を読み返したり、別の本を読んだりして、プログラム内容をしっかりと理解しようぜ!

 

おまえの言葉でコメントをしっかり書きヤガレ!

 

 

広告




 

さいごに、

せっかくお金を出して買った入門書ですから、しっかりと使い込みたいですよね

何冊も買う必要はありません
まずは1冊でいいです
しかも薄い本でいいです

その1冊をきちんと使い込めばプログラミングなんて絶対に覚えられます!

特に学習初期であれば、一つ一つをしっかりと噛み締めながら進めることがポイントです

急いでもしょうがないです
と言うか、急いだらダメです!

ゆっくりでいいので、今回書いたメソッドでじっくりと学習すればきっと後戻りすることなく前へ進めるでしょう

プログラミングは、ゆっくりと楽しんでください!

 


 

プログラミング のレッスンに興味がある方、レッスン内容を聞いてみたい方、なんなりとお問い合わせください。
無料体験レッスンもありますのでお気軽にどうぞ!!!

 

 

 

参考書籍

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ABOUTこの記事をかいた人

Windows/Mac/Linuxを使う現役システムエンジニア&プログラマ。オープン系・組み込み系・制御系・Webシステム系と幅広い案件に携わる。C言語やC#やJava等数多くのコンパイラ言語を経験したが、少し飽きてきたので、最近はRubyやPython、WordPressなどのWeb系を修得中。初心者向けのプログラミング教室も運営中。オンライン・対面・出張等でプログラミングをレッスンします。