プログラミングと海外移住で人生を自由に

koselog

プログラミング学習

プログラミング、写経のススメ【結論:向いている人と向いていない人がいます】

投稿日:

プログラミングの勉強法として、写経といわれる方法があります。
ひたすら本に載っているコードを写して、実行していくということですね。

「そんな作業のみたいにやってて勉強になるの?」

「効率悪そう。。。」

など色々な意見があると思います。

写経意味ないだろ!と思っていた否定派だった僕が写経をしてみて分かったことをお伝えしようと思います。

✅この記事のテーマ

プログラミング学習をする上で写経は良いのか?

✅この記事の内容

  1. 写経のやり方
  2. 実際に写経した本とリポジトリを公開
  3. 向いている人はこんな人

写経のやり方

  1. ローカルで使えるSCMを用意
  2. 「ほんたった」などで対象の本を固定 。しかし、電子書籍とか画面で見られるものの方が便利。
  3. ひたすらサンプルコードを写して実行
  4. 実行するたびにコミット(コミットログにページ番号を含める)
  5. 疑問点があったらコミットログや本に書き込む
  6. 章ごとにディレクトリを分けて進めていく
  7. 時々Githubのコミットログを振り返る

 1.ローカルで使える SCM を用意

これは普通にgitとGithubでやっています。

2.「ほんたった」などで対象の本を固定 。(電子書籍とか画面で見られるものの方が実際は便利。)


僕はこれを使っています。Amazonで安かったので。ページをめくりにくいのと場所を取るので他のものを現在探し中。
物理本はどうしても、PCの横とかに置くことになるんで首や目を移動するたびに疲れる気がします。

3.ひたすらサンプルコードを写して実行

基本的にはほとんど実行しています。完璧に分かっているものは、飛ばしています。

4.実行するたびにコミット(コミットログにページ番号を含める)

大体実行するたびにコミットしていますが、いくつかまとめてコミットするときもあります。
疑問点やなにか書きたいことがあったときにコミットする感じです。
git addやgit commitを何度も打つことになるので、エイリアスを設定しておきましょう。

※エディタにはVS Codeを使うとgitコマンドを打たなくて良くなるので便利です。

5.疑問点があったらコミットログや本に書き込む

今は物理本を写経していますが、基本コミットメッセージに書きます。

6.章ごとにディレクトリを分けて進めていく

第1章だったら、Section1。第2章だったら、Section2とディレクトリを分けて進めていったほうが見直す時にわかりやすいかなーと思っています。

7.時々Githubのコミットログを振り返る

これは自分がオリジナルで取り入れました。やはり、書いて実行したままよりも、たまーにこのコミットなんだっけ?と振り返るとより頭に残ります。

実際に写経した本とリポジトリ


通称チェリー本といわれる、「プロを目指す人のためのRuby入門」という本を写経しました。
Ruby初心者から、中級者くらいに引き上げてくれる素晴らしく内容の充実した本です。
写経に使ったリポジトリはこちら
写経をしている途中と写経後にQiitaに記事を書いたのですが、著者の方から反応を頂き、励みになりました。

minitestの依存関係(?)問題をbundlerで解決する

「プロを目指す人のためのRuby入門」を6週間かけて写経して学んだこと

向いてる人はこんな人

写経が向いている人は、じっくり読んで理解するのが苦手な人だと思います。
僕はじっくり読んでいるとじれったく感じるので、理解度は浅くてもどんどん先に進めたいと思う派です。
2、3週して理解できればいいやというスタンスです。
逆に、じっくり読んで一つ一つ理解していきたいと思う人にとっては効率が悪い、意味ない勉強の仕方かなと思います。

終わりに

一冊本をやり遂げると自信がつくので、どんどん前に進んでいる実感が欲しい人は写経をやってみましょう!

-プログラミング学習

Copyright© koselog , 2019 All Rights Reserved Powered by STINGER.