Index

一週間のカリキュラム 1週間で、Ruby 〜 Ruby on Railsまでを学ぶ

シリーズの2日目、ライブラリの仕組みについて学び、自身でGEMを作ってみます。

2日目の内容


自分でライブラリを作成してみる。

単純に足し算を行うだけの sumというGemパッケージを作成してみましょう。

その前に・・・

同じディレクトリ内で sum.rb main.rb をそれぞれ作成してテストしてみましょう。

#sum.rb
# a,bを足すだけの関数
def sum(a,b)
    puts a.to_i + b.to_i
end

#main.rb

require "./sum"

sum(1,3)

main.rbを実行すれば、足し算の関数が利用できてるのがわかります。 この簡単な関数をGemパッケージにしてみます。

Gemパッケージ作成の準備

#パッケージを作成するディレクトリを作成
$ mkdir SumProject
$ cd SumProject

#gem作成に必要な gemspecファイルを作成
$ touch sum_gem.gemspec

#libディレクトリを作り中にプログラム用のファイルを作成
$ mkdir lib
$ cd lib
$ touch sum_gem.rb

それぞれのファイルの中身は下記の通りです。

#./lib/sum_gem.rb
# a,bを足すだけの関数
def SumGem(a,b)
    puts a.to_i + b.to_i
end
#./sum_gem.gemspec

Gem::Specification.new do |s|
    s.name        = 'sum_gem'
    s.version     = '0.0.1'
    s.date        = '2022-02-06'
    s.summary     = "Simple Add Function"
    s.description = "Test Gem"
    s.authors     = ["gp-standard"]
    s.email       = 'dev@gp-standard'
    s.homepage    = 'https://gp-standard.com'
    s.license     = 'MIT'
    s.files       = ["lib/sum_gem.rb"]
end


準備が出来たらビルドコマンドを叩きます。


$ gem build sum_gem.gemspec Successfully built RubyGem Name: sum_gem Version: 0.0.1 File: sum_gem-0.0.1.gem

無事成功すると、ディレクトリに sum_gem-0.0.1.gem というファイルが出来上がってるのがわかります。

Gemファイルを使うには?

さきほど requireで同じディレクトリにあるファイルからsumを呼び出しましたが、今回は作成したGemファイルをインストールして SumGem関数を再利用したいと思います。

さきほど作成された sum_gem-0.0.1.gem ファイルを使ってまずはPC自体にインストールしてみます。


$ gem install sum_gem-0.0.1.gem Successfully installed sum_gem-0.0.1 Parsing documentation for sum_gem-0.0.1 Installing ri documentation for sum_gem-0.0.1 Done installing documentation for sum_gem after 0 seconds 1 gem installed

これで、自分の作成したライブラリがインストールされてるわけですが、本当に入ってるかどうかを listコマンドで確認します。


$ gem list -d sum *** LOCAL GEMS *** sum_gem (0.0.1) Author: gp-standard Homepage: https://gp-standard.com License: MIT Installed at: /Users/admin/.rbenv/versions/3.1.0/lib/ruby/gems/3.1.0 Simple Add Function

無事、入ってるのが確認できますね。

作成したパッケージを再利用する。

完全に別のディレクトリを作って下記のように requireしてみてください。 動作が確認できるはずです。

# main.rb

require "sum_gem"

SumGem(1,3)

自作したGemをアンインストール

今回のライブラリはよほど使う事は無いはずなのでアンインストールしときましょう。


$ gem uninstall sum_gem Successfully uninstalled sum_gem-0.0.1
Gemを作成して公開も可能です。
[参照](https://qiita.com/harashoo/items/1284fd5362c1a4f6c8a8)
今後、役に立つパッケージなどが出来た場合に、是非公開してみましょう。

最新記事一覧

続きを見る

関連コンテンツ

カテゴリー一覧

TOP フルスタックエンジニアを目指すに方々へ 2022年2月5日 Ruby言語のインストール、バージョン監理について