RubyGemsとは
Rubygemsとは、Rubyというプログラミング言語のパッケージ管理システムを意味します。ここでは、RubyとRubygemsについて詳しく紹介します。
Rubyとは
Rubyとは、まつもとゆきひろ氏によって開発された国産のプログラミング言語を指します。Rubyの特徴はシンプルな文法やRuby on Railsという便利なフレームワークがあることなどが挙げられます。そのため開発スピードを速めることができ、スタートアップ企業や自社開発企業などで採用されることもあります。
またRubyでできることは数多くあり、Rubyのプログラミング言語でできることの代表例として、Webアプリ・SNS・ECサイトなどの開発が挙げられます。このようにRubyのプログラミング言語はシンプルな文法が特徴で、できることが数多くあるため、プログラミング初心者におすすめの言語の1つと言えるでしょう。
Rubygemsの概要
RubyGemsはRubyのプログラミング言語のパッケージ管理システムです。またRubyのバージョンが「1.9」以降であれば、Ruby本体をインストールすると同時に、RubyGemsも標準ライブラリとしてインストールされます。
RubyGemsを使用すれば、後述する「gem」というパッケージを利用して、複雑な機能の実装でも簡単に行うことが可能です。またgemのインストール・アンインストールやインストールしたgem一覧の表示・検索などもできます。そしてこれらの操作を行うにはRubyGemsが提供している「gemコマンド」を使用する必要があります。
gemとは
RubyやRubyGemsの概要については理解できたでしょうか。ここでは、gemの概要とメリット・デメリットについて詳しく紹介します。
gemの概要
Rubyにおけるgemとは「パッケージ」「パッケージ管理システム」の2つの意味があります。パッケージとは端的に言うと便利な機能がまとめてあるもののことです。パッケージを使用すれば機能を実装する際に、ゼロからソースコードを記述する必要がなくなります。パッケージにより開発効率の向上が期待できるため、実務現場でも使用される機会は多いです。
例えば「devise」というgemをインストールすれば、簡単にユーザー認証機能を実装することができます。また「Faker」というgemを使用すれば、ダミーデータを簡単に作成することが可能です。このように様々なgemがあり、使用すれば開発スピードの向上が期待できます。
そして多くのgemは「Github」というサイトで管理されており、インストールの仕方や使い方などを確認可能です。 ( 参考:https://github.com/ )
gemのメリット
gemを使用すればパッケージを簡単にインストールできるため、プログラミング初心者でも本格的なWebアプリの機能などを実装できます。また使用する機能やレイアウトをライブラリとしてパッケージ管理できるため、スキルに関係なく安定したWebアプリを開発することが可能です。
gemのデメリット
gemのデメリットとして、インストールの仕方や使い方の多くは英語で記載されていることが挙げられます。そのため理解するまでに時間や学習コストが必要です。またRubyやRuby on Railsのバージョンを更新すると実装したライブラリにエラーが生じる可能性もあります。さらにデメリットかどうかは人によって異なりますが、gemは基本的にコマンドプロンプトを使用して操作しなければなりません。
gemのインストール方法
gemの詳細については理解できたでしょうか。ここではgemのインストール方法について詳しく紹介します。なお、Rubyの開発環境は構築されていることを前提に解説します。
既にインストールされているgem一覧を確認する
Rubyのバージョンが「1.9」以降であれば、Ruby本体をインストールすると同時に、RubyGemsも標準ライブラリとしてインストールされます。そのため既に使用できるgemも数多くあります。ここで使用するコマンドが「gem list --local」です。このコマンドを使用すれば、既にインストール済みのgemを一覧で表示することができます。
使いたいgemを探す
Rubyのプログラミング言語を使用して開発を行うときに、実装したい機能が明確であれば、Webサイトを活用して探してみると便利なgemを発見できるかもしれません。ここでは、おすすめのgemを検索できるサイトをいくつか紹介します。
1.RubyGems.org RubyGems.orgとは、Rubyコミュニティのgemホスティングサービスを指します。簡単に自分が実装したgemを公開したり、使用したいgemをインストールしたりできるのが特徴です。数多くのgemがRubyGems.orgに登録されているため、実装したい機能などで検索をかければ、関連するgemを見つけられるかもしれません。 ( 参考:https://rubygems.org )
2.BestGems.org Rubygems BestGems.orgのWebサイトではダウンロード数が多いgemが分かります。また毎日のダウンロード数のランキングや注目度形式のランキングも用意されているため、トレンドのgemを発見することも可能です。 ( 参考:http://bestgems.org/ )
他にも先述したGitHubで公開されているgemもあります。このようなWebサイトを活用すれば、便利なgemを見つけることができるでしょう。
gemをインストールする
使用したいgemを見つけられたら、インストールしましょう。インストール後の使い方はgemによって異なるため注意が必要です。一般的に「bundler」というパッケージ管理ツールを使用してgemを管理します。なおbundlerもgemの1つです。bundlerはgem同士の依存関係を管理できるのが特徴と言えます。
まずは、bundlerを使用するために「gem install bundler」というコマンドを入力して、bundlerをインストールしましょう。正常にインストールできたか確認するには「bundler -v」を入力すると把握できます。「Bundler version ×.×.×」というように、バージョンが表示されていれば、正常にインストールができています。そして「gem install 〇〇〇」というように、「〇〇〇」に使用したいgemを当てはめてコマンドを入力すれば、gemをインストールすることが可能です。
例えばRuby on Railsの場合は、「gem install rails」というコマンドを入力すればインストールすることができます。また「--version」というオプションを使用すれば、バージョンを指定してインストールすることが可能です。例えば「gem install rails --version 5.0」というコマンドを入力すれば、バージョン「5.0」のrailsをインストールすることができます。
gemコマンドの使い方
gemのインストールまでの流れは理解できたでしょうか。ここでは、よく使用するgemコマンドの使い方について詳しく紹介します。
gemのアンインストール
gemのアンインストール方法をご紹介します。「gem uninstall 〇〇〇」というコマンドを入力すれば、「〇〇〇」というgemをアンインストールすることができます。
インストール済みのgem一覧を表示
インストール済みのgem一覧を表示するには「gem list --local」というコマンドを使用します。このコマンドではgemの名称とバージョンを確認することが可能です。また、「gem list」というコマンドでもインストール済みのgem一覧を表示できます。
最新のバージョンのgemが存在するか確認する
最新のバージョンのgemが存在するか確認したい場合には「gem outdated」というコマンドを入力しましょう。例えば「fiddle (1.0.6 < 1.0.9)」と出力されたら、「fiddle」というgemにおける現在の バージョンは「1.0.6」であり、最新版「1.0.9」に更新できることを意味します。
gemのバージョンを更新する
「gem update」というコマンドを使用すれば、インストール済みのgemを全て最新のバージョンにすることが可能です。また「gem update 〇〇〇」というコマンドを使用し、「〇〇〇」にgemの名称を入力すれば、特定のgemだけバージョンを更新することができます。
RubyGemsを活用して開発スピードを向上させよう!
これまでにRubyGemsの概要やgemの詳細について解説しました。RubyGemsとはRubyというプログラミング言語のパッケージ管理システムを指します。gemというパッケージを使用すれば、複雑な機能の開発でも簡単に実装が可能です。
使用したいgemを検索するには「RubyGems.org」「BestGems.org Rubygems」「GitHub」などのWebサイトを活用するのがおすすめです。
gemを使用するにはコマンドを使いこなす必要があります。よく使用するgemコマンドを紹介しましたが、他にも数多くのコマンドやオプションがあります。Rubyでの開発効率を向上させるために、RubyGemsに関する知識を深めておくことは大切です。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから