Gemとは?RubyのGemを使ってみる!


こんにちは。Tomoyuki(@tomoyuki65)です。

Rubyを学んでいると「Gem」というのが出てきますが、イマイチよくわかりませんよね。

そこでこの記事では、Gemについて解説したいと思います。

 



Gemとは?

GemはRubyGemsが公開しているライブラリのことです。

RubyGemsはRuby用のパッケージ管理ツールで、ライブラリの作成や公開、インストールを助けるシステムです。

このライブラリを使用することで、自分で1からコードを書かなくても簡単に機能を実装することができます。

ただしデメリットとして、使用するフレームワーク(Ruby on Railsなど)のバージョンによる相性や、多様しすぎると保守が大変になります。

Gemを利用する場合は、目先の便利さと将来遭遇する面倒ごとのバランスが取れていることを考慮すると良いようです。

 

Gemを使ってみよう!

では試しにGemを使ってみましょう。

今回はRuby on Railsの汎用的なライブラリであるActiveSupportを使い、日付に関する計算をしてみます。

日付に関する計算は結構大変なので、そんな時はこのActiveSupportを使っておけば良いと言われています。

では以下プログラムを実行してみて下さい。

# RubyGemsを読み込む
require 'rubygems'

# ActiveSupportの機能を全て読み込む
require 'active_support/all'

# 現在日時を表示する
p Time.now

# タイムゾーンを東京に変更して現在日時を表示する
p Time.now.in_time_zone('Asia/Tokyo')

 

実行結果は以下の通りです。

2017-10-22 04:40:47 +0000
Sun, 22 Oct 2017 13:40:47 JST +09:00

 

「p Time.now」で現在時刻が表示されますが、タイムゾーンが異なっているので、日本の時間と異なってしまいます。

そこで「in_time_zone」メソッドを使い、タイムゾーンを「Asia/Tokyo」にして表示すると、日本の現在時刻が出力されます。

このように、Gemを使うと簡単に機能を実装することができます。

ActiveSupportを使えば他にも様々な日付の計算ができますので、色々試してみて下さい。

Gemはこの他にも様々なものがあるので、開発コストを下げるためにも積極的に使っていきたいですね。

 



Gemを検索する方法

Gemには様々なものがありますが、Gemのパッケージ名で検索したい場合はRubyGemsのコミュニティーサイトから検索することができます。

検索するとダウンロード数のランキング形式でリストアップされ、最新のバージョンの確認もできます。

 

まとめ

  •  GemはRubyGemsが公開しているライブラリのこと
  •  RubyGemsはRuby用のパッケージ管理ツールで、ライブラリの作成や公開、インストールを助けるシステム
  •  Gemを使うことで簡単に機能を実装できるメリットと、バージョンによる相性問題や多用しすぎた場合の保守が大変になるデメリットがある
  •  目先の便利さと将来遭遇する面倒ごとのバランスが取れているGemは、開発コストを下げるために積極的に利用しよう。

 

その他、Ruby入門に関する記事はコチラを参考にしてみて下さい。

 

The following two tabs change content below.

Tomoyuki

SEを5年経験後、全くの未経験ながら思い切ってブロガーに転身し、月間13万PVを達成。その後コロナの影響も受け、以前から興味があったWeb系エンジニアへのキャリアチェンジを決意。現在はWeb系エンジニアとして働きながら、プロゲーマーとしても活躍できるように活動中。








シェアはこちらから


【2024年】おすすめのゲーミングPC

モンハンワイルズの発売日とPC版(Steam版)の推薦スペックが公開されたので、おすすめのゲーミングPCをご紹介!


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です