Rubygemsってどんな仕組みなの? Rails初心者にオススメのgem徹底解説!

あなたはRubyのgemの使用方法について悩んでいませんか?
筆者もRubyを始めたばかりの頃は、gemの使い方や仕組みがよく分からなく悩んでいました。

しかし、この記事を読むことで、あなたはRubyのgemについて理解することができます。

 

gemって何なの?

Rubyで使用することのできるライブラリ(汎用性の高い機能をひとまとまりにしたもの)を作成して公開したり、インストールを補助してくれるシステムです。【ジェム】と発音します。とても便利なのでRubyを学習する際には必ず学んでおきましょう!

RubyGems

Ruby のライブラリは主に RubyGems.org にgemという形で管理されています。
複雑な実装であってもgemを使うことによって楽に実装することが可能になります。

どんなgemがあるか見てみよう!

どんなgemがあるかは2通りの方法で確認することができます。

①直接ウェブサイトを閲覧する。
https://rubygems.org/

GEMSというところをクリックしてみると画像のようにアルファベット順でのgemを閲覧と、それぞれのgemのダウンロード数を確認することができます。

②ターミナルで gemコマンドを使用し探す。

$ gem search -r

*** REMOTE GEMS ***

^[[A- (1)
.cat (0.0.1)
0mq (0.5.3)
0xffffff (0.1.0)
10to1-crack (0.1.3)
1234567890_ (1.1)

RubyGemsの中にあるすべてのgemを確認することができます。

$ gem search -r rails

*** REMOTE GEMS ***

aa-rails4 (0.6.0)
aaronchi-jrails (0.5.1)
aavkontakte-rails3 (0.1.9)
ab-experiments-rails (0.0.2)
abcjs-rails (3.0.1)
access-granted-rails (0.1.0)

RubyGemsの中にあるgemの中からRails に関係のある gem だけを取得することができます。

gemのインストール方法

$ gem install <インストールしたいgem>

–version / -v オプションを使いインストールするgemのバージョンを指定することもできます。

$ gem install <インストールしたいgem> --version 3.0

 

gemを快適に使いこなすためのコマンド

ここまででgemについて少しは理解できたでしょうか。
ここからは実際にgemを使用する際に便利なコマンドについて紹介します。

 gemをインストールする

先ほども紹介しましたね。

$ gem install <gemの名前>

–version / -v オプションを使いインストールするgemのバージョンを指定することもできます。

$ gem install <インストールしたいgem> --version 3.0

gemをアンインストールする

gemが不要になった場合にはアンインストールすることができます。

$ gem uninstall <削除したいgemの名前>

インストール済みのgemを一覧表示する

$ gem list

*** LOCAL GEMS ***

actionmailer (4.2.5, 4.2.4, 4.2.3, 4.2.2, 4.2.1, 4.2.0, 4.1.9, 4.1.6, 4.0.4)
actionpack (4.2.5, 4.2.4, 4.2.3, 4.2.2, 4.2.1, 4.2.0, 4.1.9, 4.1.6, 4.0.4)
actionview (4.2.5, 4.2.4, 4.2.3, 4.2.2, 4.2.1, 4.2.0, 4.1.9, 4.1.6)
activejob (4.2.5, 4.2.4, 4.2.3, 4.2.2, 4.2.1, 4.2.0)
activemodel (4.2.5, 4.2.4, 4.2.3, 4.2.2, 4.2.1, 4.2.0, 4.1.9, 4.1.6, 4.0.4)
activerecord (4.2.5, 4.2.4, 4.2.3, 4.2.2, 4.2.1, 4.2.0, 4.1.9, 4.1.6, 4.0.4)
activerecord-deprecated_finders (1.0.4)
activerecord-session_store (0.1.2)

インストールしているgemを検索したい場合

$ gem list <キーワード>

gemを探す

searchコマンドを使用するとgemをキーワード検索することができます。

$ gem search -r <キーワード>

–remote /-r とは 公開されているRubyGems.org の中から検索していることを表しています。反対に –local/ -l を使用すると自分のPCの中にインストールされているgemを検索することができます。

gemをアップデートする

gemを新しいバージョンに更新したいときに使います。
インストール済みのgemを全て最新バージョンにする

$ gem update

特定のgemのバージョンを更新する

$ gem update <アップデートしたいgem>

 

よく使う便利gem厳選3選

こちらではRails初心者に向けて定番機能の実装を楽にしてくれるgemを紹介していきます。

ログイン機能「Devise」

railsの開発でもっとも人気なログイン認証機能を提供しているgemです。
応用すればTwitterログインや、Facebookログインも実装することができます。

GitHub
https://github.com/plataformatec/devise

詳しいインストール方法は以下の記事がとてもわかりやすくまとめています
Railsのログイン認証gemのDeviseのインストール方法

ページネーション「Kaminari」   

とても簡単にwebアプリケーションにページネーション(ページ割の機能)を実装することができます。
ページネーションを聞き覚えのない人は以下の画像でイメージできるかと思います!

daga_-_Google_検索

GitHub
https://github.com/amatsuda/kaminari

実装については以下の記事がわかりやすくまとめています。
Railsライブラリ紹介: ページングを行う「kaminari」

画像ファイルアップロード「Paperclip」

画像アップロード用のgemであるpaperclipを使って、画像のアップロード機能を実装しましょう。paperclipを使うと非常に簡単に画像のアップロード機能を実装することができます。

GitHub
https://github.com/thoughtbot/paperclip

実装については以下の記事がわかりやすくまとめています。
RailsでPaperclipを使ってファイルをアップロードする

まとめ

いかがでしたでしょうか。
Rubyのライブラリについて理解できたでしょうか。紹介させていただいた3つのgem以外にも便利なgemがたくさんあります!gemを使って効率よく開発を進めていきましょう

 

TECH::CAMPについて

TECH::CAMPは、講義形式で知識だけを学ぶのではなく、実際にサービスを作りながら実践的に学んでいきます。

TECH::CAMPならプログラミングが、なんとなく分かるではなく、一人で出来るようになります。

また、質問し放題のため、分からないところを質問しすぐに解決することで、どんどん新たなスキルを身につけることができます。

この機会にプログラミングを学びませんか?

sawadakota sawadakotaが書きました
  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。

  • カテゴリー
  • このエントリーをはてなブックマークに追加
    記事をシェア→