Ruby関連のよかった本紹介

こんにちは🌏

これはKMCブログリレー2020の記事です。

blog.kmc.gr.jp

こんにちは、KMC部員のmachidaです。

気付いたら三回生になってて怖いです、新入生の皆さん気をつけてください!

Ruby(主にRails)をやっていくにあたっていくつか書籍を読んできたのですが*1、繰り返し読んでいる素晴らしい本がいくつかあるので、僭越ながらご紹介したいと思います*2

Rubyに興味あるよ!という方、参考にしていただけたら幸いです!

書籍紹介📖

プロを目指す人のためのRuby入門🍒

Rubyの基本文法はこの本で勉強しました。

基本的なところから丁寧に説明しつつ、procやらラムダ式やらのやや応用的な範囲まで突っ込んでいて素晴らしいです。文章も平易で読みやすいです。

しょっぱなからMinitestによるテスト自動化の説明に入って、テスト駆動開発を前提に話が進んでいくのがとても新鮮でカッチョいいです。

面倒臭がらずにテストを書くことの大切さを教えてくれます、皆さんはテストを書いてますか?*3

どんな人にもオススメできると思いますが、オブジェクト指向に関する詳しい説明はないので、全く馴染みがない人にはちょっと辛いかもしれません(「オブジェクト指向でなぜつくるのか」読みましょう!)。

メタプログラミングRuby🧙

Rubyにおけるメタプログラミング、いわゆる黒魔術について書かれた本です。

メタプログラミングについて、この本は以下のように定義しています。

メタプログラミングとは、コードを記述するコードを記述することである。

メタプログラミングについて、オブジェクトとクラスの関係やメソッドツリー探索の仕組みといったRubyの基本的な仕組みからしっかり説明してくれています。

メタプログラミングを銘打っているものの、メタプログラミングの技法書というよりは、Rubyをより知るための資料として非常に素晴らしいです。

俺は黒魔術なんかに頼らねえぜ!という方にも一読の価値があると思います(Railsで勝手に生えてくるメソッドとかにビビらなくてよくなるかも)。

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

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

オブジェクト指向設計実践ガイド🚴

オブジェクト指向の名著、"Practical Object-Oriented Design in Ruby"の日本語版です!

オブジェクト指向において、アプリケーションの各部分を簡単に変更・再利用するためにはどのように設計すべきかを、理解しやすい例を用いてガイドしてくれます。

自然な発想で書かれたコードから出発し、プログラムを徐々に改良していくという形で進むため、理論と実践のあいだのギャップのない、実用的なアプローチを提供してくれます。

原則を提示しつつも、どういった判断基準で原則を破るか、またすでに破ってしまっている場合どうすべきか、といったことについても説明があり極めて実践的です。

OODに悩まされている方、ぜひ読んでみてください!今回最もおすすめしたい本です。

Rubyによるデザインパターン👨‍👨‍👦‍👦

デザインパターンの勉強したいけど、Javaでやりたくないな~と思って調べていたら出会いました。

いわゆるGoFのパターンを、シンプルなRubyのコードを用いてわかりやすく説明しています。

RubyならProcやオープンクラスを使ってこう書けるよ!的な記述も豊富で最高!!!

かなりすらすらと読み進められるので、デザインパターンを勉強したかったけれどビビっていた人にもおすすめできます。

現在絶版のためプレミア価格になってしまっていますが、買っても絶対後悔はしないです!*4

Rubyによるデザインパターン

Rubyによるデザインパターン

おわり🌱

いかがでしたか?この記事よかったよ!という方は高評価とチャンネル登録よろしくお願いします。

*1:イデアも根気もなくてコードが書けないので本を読んで誤魔化している

*2:一応Amazonのリンクを貼ってますがお金は入りません ねんのため

*3:僕は書いてません(面倒臭いので)。

*4:たぶんしないと思う しないんじゃないかな まちょっと覚悟はしておけ