地方でリモートワーク

プログラミング、先物、fx,仮想通貨なんでもやります

「写経」してるだけじゃプログラミングは上達しない!

スポンサーリンク

f:id:ihatov08:20160507220924j:plain

 

「誰もが知っているけど敢えて言わない確実に身につくプログラミング学習法」の記事を読みました。「たしかに」と納得する部分と「?」となる部分がありました。

誰もが知ってるけど敢えて言わない確実に身につくプログラミング学習法 - WirelessWire News(ワイヤレスワイヤーニュース)

 新米エンジニアで毎日プログラミングしているのですが、どうすれば早く上達できるのが日々考えながら学習しています。そんな時にslackでリモートで働いているエンジニアさんからこの記事が送られてきました。

簡単にいうと、サンプルコードを何も考えずに真似して打ち込む「写経」をすれば確実にプログラミングが身につくよって話。

「そんなバカな。そんなことで上達が早まったら苦労しない」

この記事にも書いてあるように、こんなんで上達したら苦労しないですよね。でも、筆者は写経で上達すると書いています。

たしかに、初心者が「こんな機能作ってみてください」といきなり言われても 、実装できるわけがありません。それよりもサンプルコードを配って、それを同じように打ち込むことで「こういう実装方法があるんだ」とサンプルコードの実装方法を参考にしたほうが、勉強になることに異論はありません。

でも、「何も考えずに」コードを打っているだけで上達はできません。筆者もこう言ってます。

 なぜかというと、写経というのは、「なにも考えなくて良い」と言われるものの、人間ですから考えてしまいます。しかも、一言一句、記号のひとつひとつまで、意味を噛み締めながら入力していきます。

 すると、サラッとサンプルプログラムを眺めているだけでは気づかなかった細かい法則や作法、サンプルプログラムを制作した製作者の意図などといったものがどことなくつかめてくるようになるのです。

写経しているうちに人間だから考えてしまう。考えているうちの気づきが大事だといっています。

 

結局考えてるじゃん!

 

だから、考えずに打ち込んでも上達しません。はじめは写経でも、2回目、3回目はコードの意味を理解しながら、打ち込まないと上達しません。

実際、改訂3版 基礎 Ruby on Rails 基礎シリーズを写経だけだとRailsのRも学べません。写経した後に、意味を理解しながら学習したほうが何倍も理解が深まりました。

 

そもそも、他人が作成したプログラミング言語、フレームワークを何も考えずに打ち込むだけで理解できるなんて美味しい話はありません。スピード◯ーニングでもないですし。

ただ、プログラミングをコピペしても上達はできないとは感じてます。どんなに短いコードでも、自らの手で打ち込むことが大切です。

 

初心者の方に気をつけてもらいたいことは

  • はじめは写経でもいい
  • コピペは論外!
  • 2周目以降は意味を理解しながら打て
  • 自分の手でコードを打ち込め
  • 他人のコードをたくさん読んで盗め!

ってことを声を大にして言いたいです。