Roll With IT

tamakiのIT日記

チェリー本輪読会 最終週まとめ

f:id:shirotamaki:20210619091936p:plain

🍒 はじめに

チェリー本輪読会の第17週目(最終週)のエントリーになります。

輪読会の概要については第1週目にまとめています。

🍒 輪読会 第17週目(最終週)まとめ

第12章12.1.1〜付録(あとがき)まで

期間:2021年9月13日〜2021年9月17日

かれこれ3ヶ月前に終わった輪読会ですが、今更ですが最終週を書きました!

個人的な備忘録(思い出ログ)として書いています。

requireの単位はライブラリ

組み込みライブラリ以外のクラスやモジュールを使う場合は、requireで事前にライブラリを読み込んでおく必要があります。requireしている単位はひとつひとつのクラスやモジュールではなく、ライブラリになります。requireで読み込んでいるライブラリは慣習的に小文字で書くことになっています。gemの命名規則について以下ブログが参考になりました。

推奨される RubyGem の名前の付け方 - yu8mada

Rubyのバージョン管理

Rubyを使用する場合、なるべく最新のものを利用することが推奨されています。

Rubyのバージョン以下のコマンドで確認できます。

❯ ruby -v
ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [x86_64-darwin20]

x.y.z

  • x majorバージョン
    • アーキテクチャやコンセプトの変更、完全な書き換えがあった場合に増加する
  • y minorバージョン
    • クリスマスごとに増加する。大幅な仕様変更や機能追加が行われる。
    • 後方互換性のない仕様変更が入る可能性がある
  • z teenyバージョン
    • 軽微な使用変更、小さな機能追加が行われる。
    • API互換性を維持するセキュリティフィックス(修正のこと)やバグフィックスが行われる

Ruby 2.1.0 以降のセマンティックバージョニングについて

セマンティック バージョニング

Semantic Versioningとは、ソフトウェアのバージョニング方法の一つです。

「1.23.45」といったように.で区切った3つの数字で表されます。

セマンティック バージョニング 2.0.0 | Semantic Versioning

Gemfileでgemのバージョンを指定する記号の意味

バージョンをGemfileに指定して管理ができます。バージョン番号を指定しない場合は、Bundlerにおまかせになります。

  • 1.7.2 特定のバージョンを使いたいときは、カンマ区切りで指定する
  • >=1.7.2 1.7.2以上であれば何でも良い場合は>=を使う
  • ~> 1.7 ~> 悲観的バージョン演算子と呼ぶ。マイナーバージョンは上げてもいいが、メジャーバージョンは上げたくない場合に使う
  • ~> 1.7.2 パッチバージョンは上げていいが、マイナーバージョンは上げたくない場合に使う

RubyMineでrbenvが反映されない件

RubyMineでのRubyバージョン切り替えは、rbenv shell コマンドで実行する必要があります。

scrapbox.io

その他バージョン管理の注意点

Rubyのバージョンごとにgemを管理する必要があります。

他のgemとの依存関係があり、gemのバージョン変更を試みる際、互換性の問題でエラーになる場合があるので注意が必要です。

自作gem入門

こちら教えていただいgemの入門記事です。

いつかgem作りにもチャレンジしてみたいと思いました!

qiita.com

あとがきの朗読(本人ver.)

なんと!最後のあとがきを著者の伊藤さんご本人に読んでいただきました!

この感動はなかなか文章では伝えづらいですが、とても貴重な体験でした。著者に見守られる輪読会、そして最後にはあとがきを読んでいただき、労いの言葉までいただく。日本中どこを探しても、このような経験ができる輪読会はなかなかないのではないでしょうか?

めちゃくちゃエモい最終回でした!

謝辞

2021年5月25日にスタートし、9月17日に最終回を迎えた輪読会。

あれから月日が経ちましたが、最後は輪読会でお世話になった方々への感謝の気持ちをまとめ締めくくりたいと思います。

始めた当初は完走できるか不安でしたが、終わってみると本当にあっという間で楽しい毎日でした。

就職が決まったメンバー、フィヨルドブートキャンプのカリキュラムを終えられ卒業されたメンバー、別の輪読会を主催しているメンバーなどなど、その後もみなさん各方面で大活躍されています。

輪読会という共通目的を持った仲間で走りきった17週間。輪読会を通しとても成長できました。

輪読会メンバー、多くのアドバイス、サポートいただいた森塚先輩、アドバイザー、メンター、そして著者の伊藤さん!

関わってくれた全ての皆さんに感謝したいです。

ありがとうございました!

参考書籍

🍒 おまけ

チェリー本の完走ブログ

輪読会メンバーのブログも紹介したいと思います。

参加した経緯や輪読会で学んだことなど、読みながら「うんうん、わかる〜」の連続で、輪読会の雰囲気や熱が伝わってくる素敵なブログです。

いっしーさんのブログにも書かれていますが、同じ目的を持って学ぶ仲間ができたことが私も何よりも嬉しく、とても良い経験、財産となりました。

isshi-hasegawa.hatenablog.com

yana-g.hatenablog.com

チェリー本改訂2版が発売されました

すでにご存知かとは思いますが、2021年12月2日にチェリー本の改訂2版が発売されました!もちろん、私もすでに購入し手元にあります。これから、改訂2版の輪読会も開催されるのですが、とても楽しみです。

これからチェリー本を学習する方は、「さくらんぼが2つ」を目印に、改訂2版を買いましょう。ボーっとして間違えて購入しないように注意です(パーフェクトRubyonRailsも改訂版とそうでない版があるのですが、私は過去にやらかした経験があります…w)

blog.jnito.com

また、こちらのブログはチェリー本の差分がわかりやすくまとまっていてお薦めです。

aim2bpgさん の分析力凄すぎる...!

aim2bpg.com

伊藤さんのお墨付きです!

次のステップとしてのお薦め教材

「チェリー本の次に読むべきRuby本のお薦めはなんですか?」と、メンターさんや卒業生の方に質問したときに、よく名前の上がる本をご紹介します。

「パーフェクトRuby」はRubyをさらに体系的、網羅的に学ぶには最適だそうです。チェリー本で学んだ知識をより深く学んでいくことができます。

メタプログラミングについて学ぶのも良いそうで、その中でもダントツに名前が上がるのが「メタプログラミングRuby」です。メタプログラミングを始めるなら、まずはこちらがお薦めとのことです。

改訂2版 パーフェクトRuby

gihyo.jp

メタプログラミングRuby 第2版

www.oreilly.co.jp

書を持てよ、輪読会へ出よう

主催者のトミーさんの呼びかけにより始まった輪読会。

このチェリー本輪読会をきっかけに、その後多く輪読会が誕生しました。すでに終了した輪読会もありますが、現在もフィヨルドブートキャンプ内では多くの輪読会が開催されています。

私が現在参加中の輪読会の一部ですが、以下のブログも輪読会の雰囲気が感じ取れる素敵な内容なので、もし気になった方はぜひ読んでみてください。

paru871.hatenablog.com

isshi-hasegawa.hatenablog.com

また、「参加したいけど、いま一歩踏み出せないあなた」へはこちらのブログを!コミュニティへ飛び込むまでのお気持ちが丁寧に書かれていてわかりみが深いです。

napple29.hatenablog.com


これにてチェリー本輪読会シリーズは完結です!

最後までお読みいただきありがとうございました!

また、どこかの輪読会でお会いしましょう♪