Effective Ruby 第7章まとめ

こんにちは!kossyです!




さて、今回はEffective Rubyの第7章の覚えておくべき事項を
ブログにまとめてみたいと思います。

前回までの章をまとめたものはこちら
Effective Ruby 第1章まとめ - その辺にいるWebエンジニアの備忘録
Effective Ruby 第2章まとめ - その辺にいるWebエンジニアの備忘録
Effective Ruby 第3章まとめ - その辺にいるWebエンジニアの備忘録
Effective Ruby 第4章まとめ - その辺にいるWebエンジニアの備忘録
Effective Ruby 第5章まとめ - その辺にいるWebエンジニアの備忘録
Effective Ruby 第6章まとめ - その辺にいるWebエンジニアの備忘録


第7章 ツールとライブラリ

7-1. Ruby ドキュメントの扱い方を覚えよう

  • ドキュメントを読むためにはriユーティリティ、ドキュメントを生成するためにはrdocユーティリティを使う。
  • "doc"ディレクトリでドキュメントを探すようにriユーティリティに指示するには、コマンドラインオプションとして"-d doc"を指定する。
  • riで読めるドキュメントを生成するには、コマンドラインオプションとして"-f ri"を指定してrdocを実行する。
  • rdoc整形ルールの完全なドキュメントは、RDoc::Markupクラスにある

7-2. irbの高度な機能を使えるようになろう

  • IRB::ExtendCommandBundleモジュールか、IRB::ExtendCommandBundleにインクルードされるモジュールでirbカスタムコマンドを定義できる。
  • アンダースコア変数("_")を使えば、最後の式の結果にアクセスできる。
  • irbコマンドを使えば新しいセッションを開始し、評価コンテキストを任意のオブジェクトに変えることができる。
  • irbの代わりに使えるREPLとして人気のあるPryを検討してみよう。

7-3. Bundlerでgemの依存関係を管理しよう

  • Bundlerをロードしたあと、Bundler.requireを使えば、柔軟性は少し失われるが、Gemfileで指定した全てのGemをロードできる。
  • アプリケーションを開発するときには、Gemfileに使っているgemのリストを書き、バージョン管理システムにGemfile.lockファイルを追加しよう。
  • RubyGemを開発するときには、gem仕様ファイルにgemの依存コードを書き、バージョン管理システムにGemfile.lockファイルを入れないようにしよう。

7-4. 依存gemのバージョンの上限を指定しよう

  • バージョン要件の上限を省略するのは、自分のアプリケーションやライブラリが依存コードの将来の全てのバージョンをサポートすると公言するようなものだ。
  • 悲観的バージョン演算子ではなく、バージョン番号の範囲の明示的に示す方法を使うようにしよう。
  • gemを一般公開するときには、安全な範囲でできる限り広い範囲のバージョン要件を指定するようにしよう。上限は次に互換性がなくなる可能性のあるリリースの直前までにするとよい。


出典: https://www.shoeisha.co.jp/book/detail/9784798139821