【Ruby】【プログラミング】チェリー本を読んで(+これまでの学習過程の振り返り)
お久しぶりです。
Sugenoです。
しばらくインプットばかりの生活を続けていたので、吐き出しておこうかと思います。
今回は、最近学習していたプログラミング言語Rubyの教本の「プロを目指す人のためのRuby入門」
いわゆるチェリー本、を読んでみた感想を自分の学習過程と絡めて紹介していきたいと思います。
1. 学習過程
まずは、僕がチェリー本を手にとるまでに学習してきた過程を整理します。
✅ProgateのRuby講座1周
✅ProgateのRuby on Rails講座1周
✅Railsチュートリアル2周
✅オリジナルアプリ作成
最初はProgateの有料会員になって、Ruby講座を一気に1周やりました。
Progateは初心者にも簡単に進められるように作られていますし、環境構築(RubyやRailsを自分のPCで使えるようにする作業)が要りませんし、文法的な知識であれば網羅的にサクッと定着するので、マストでやるべきです。
その後も流れでProgateのRuby on Rails講座も1周やりました。このとき特に意識したのは、暗記しないことです。
正直Railsになると、「文法的な知識+アプリ全体の機構」を学んでいかなければいけないので、忘れた文法を振り返ったり暗記してから進む方法だと、とても時間がかかります。
忘れた箇所は潔くカンニングして、とにかくモチベを保ったまま終わらせることに注力しました。
その後、Railsエンジニアの登竜門であるRailsチュートリアルを2周しました。
1周目はエラーの嵐で、ググる能力がかなり上がりました。このときも意識したのは、暗記せず、とりあえず動くアプリを作ることです。
実際1周目が終わった後の理解度は35%〜40%くらいだったような気がします。正直全然覚えてないけど、とりあえずアプリが動くからいいか、くらいで良いと思います。
2周目はエラーも特に出ず、前回理解不足だった箇所をキャッチアップしていけたので、すごく楽しかったです。
この時点で理解度は80%〜90%になってれば良いんじゃないでしょうか。
手を動かすよりは、理解を深めるイメージが強かったように思います。
余裕があったので、+αでポストの検索機能と、いいね機能をつけました。
これらを経て、オリジナルアプリを1つ作りました。
驚くことに、3日ほどで機構は作り上げることができました。
ここでも学んだのですが、文法やメソッドを完全に暗記している必要はないということです。
Railsチュートリアルを見ながら、自分の実装したい機能を一つずつ着実に作っていけば良いと思います。
このアプリの作成過程についてはいずれQuiita等でまとめていきたいです。
2. チェリー本を手に取った理由
以上の学習過程を経て、チェリー本を読み始めました。
僕の目標はサーバーサイドエンジニアに転職することなのですが、界隈の方達の発信を見ていると2019年中くらいは、チュートリアルが終わってアプリを1つ作れば転職できるよ!
という雰囲気だったのですが、最近(2020年6月時点)では、Dockerでの開発、インフラにAWSを採用、CI/CDを利用するなどレベルが跳ね上がっているようです。
かつ、自粛の影響で企業側の受け入れ体制も整っていないこともあるので、焦らず今の知識を拡張していってから動こうと思いました。
結果、Rubyへの理解を深めたのちに、Docker→AWSとシフトしていけば良いのかなと思っています。
現場のRailsでの開発でも、Rubyの仕様を理解していることはマストですし、Railsチュートリアルを終えただけでは、深い部分までのRubyでの理解はできないこともあって、最も有名なチェリー本を選択しました。
やっと本題ですが、上述したような学習過程の僕がチェリー本を読んだ感想をまとめていきます。
3. チェリー本を読んで
まず、購入後に目次を流し見した印象ですが、結構知っている内容が多いな。意外と新しく学べる要素は書いてないかもしれないと感じました。
最初に言っておきますが、この印象は半分当たっていて半分外れていました。
序盤の章では、基本的な項目が多く、ハンズオンで実際にファイルを作成していって基礎をおさらいできる内容でした。
6章くらいまではさらっと読み切れると思うので、
「あ、これは初見」
「これはあとで見直したい」
みたいな箇所に付箋を貼っていきました。
7章からはクラスやモジュールといったRuby教本のメインどころが出てくるので、時間をかけて熟読しました。
ここでもその都度は理解するけど、暗記はしないということを意識して読んでいました。
9章以降は新しい知識のオンパレードでした。
yieldやデバッグのbyebugなんかはRailsチュートリアル内でも、何気なく使っているのですが、仕様が深く理解できて非常に勉強になりました。
全体を通して、
「これは後々使いそうだな」
という箇所に付箋を貼っていったので、その箇所を中心にもう一度さらっと読み返してみようと思っています。
全体の感想としては、網羅的に学べるので辞書として保管しておくことができて、現場で出会ったときにチェリー本に戻ってきて検索できるなという印象です。
やり切って終わり。という本ではないので購入して本当に良かったです。
ただ、2周する必要があるかと言うとそこまでではないのかなと思います。ぱらぱら流し見して、全然記憶にない箇所や付箋を貼った場所を軽く読む、くらいで良いかなという感じがします。
ちなみに、僕の場合は本業をやりながら2週間ほどで読了しました。
僕と同じような学習過程の方に参考になれば幸いです。
その他感じたこととしては、Railsチュートリアルのすごさです。
Rubyへの理解が浅くても、一つのアプリがあれだけのクオリティで出来上がることは凄いことだなと痛感しました。
以上、プログラミング初学者によるチェリー本の感想でした!
この記事が気に入ったらサポートをしてみませんか?