#14 Rubyで学ぶ外部ライブラリの基本
Rubyの外部ライブラリは「gem」と呼ばれ、`gem`コマンドやBundlerというツールを使って管理します。この記事では、Rubyにおける外部ライブラリの使い方の基本と、実際のプロジェクトでの管理方法を解説します。
gemコマンドでインストールする
gem install nokogiri
`nokogiri`はHTML/XMLを解析するための定番gemです。インストールが完了すると、そのマシン上のどのRubyプログラムからも`require`で読み込めるようになります。
ライブラリを使う
require 'nokogiri'
doc = Nokogiri::HTML(html_text)
`require`は「このファイルの内容を読み込む」という命令で、Rubyの標準ライブラリ(`require 'date'`など)を読み込むときにも同じ書き方を使います。
Bundlerでプロジェクトごとに管理する
実際の開発では、`Gemfile`というファイルに使うgemを書いておき、`bundle install`でまとめてインストールする「Bundler」という仕組みがよく使われます。
# Gemfile
source "https://rubygems.org"
gem 'nokogiri'
gem 'rails', '~> 7.0'
`gem install`を個別に実行する方法は、プロジェクトによって必要なバージョンが違う場合にバージョンの衝突を起こしやすいという弱点があります。Bundlerを使うと、`Gemfile.lock`というファイルに実際にインストールされたバージョンが記録されるため、チームメンバー全員が同じバージョンのgemを使える状態を保てます。
gemを探す
使いたい機能のgemを探すには、Rubyの公式パッケージリポジトリであるRubyGems.orgで検索するのが基本です。ダウンロード数や最終更新日を確認し、活発にメンテナンスされているgemを選ぶようにしましょう。
Rubyならではの注意点
Rubyでは外部ライブラリのことを「gem」と呼びます。この単語は、Pythonの「パッケージ」やGoの「モジュール」にあたるものだと理解しておくと、ドキュメントを読む際に混乱しにくくなります。また、Ruby on Railsのような大きなフレームワークを使う場合、フレームワーク自体が多数のgemに依存しているため、Bundlerの理解はほぼ必須になります。バージョン指定の`~>`(ペシミスティック演算子)は「このバージョン以上、ただしメジャーバージョンは変えない」という意味で、意図しない破壊的変更の混入を防ぐためによく使われます。
まとめ
Rubyの外部ライブラリ(gem)は`gem install`または`Bundler`を使って導入します。`Gemfile`によるプロジェクトごとの管理、バージョン指定の書き方もあわせて覚えておきましょう。
本ページはプロモーションを含みます。
参考書籍(PR)
Rubyをもっと学びたい方には「プロを目指す人のためのRuby入門[改訂2版]」がおすすめです。
PR
コードを書かずに自動化したい方へ
「学んだけど自分の作業に組み込む時間がない」という方向けに、ダブルクリックで動く Windows専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。
コメント
コメントを投稿