RubyGemsについて学ぶ
RubyGemsとは?
Ruby言語用のパッケージ管理システムであり、Rubyのプログラムと("gem" と呼ばれる)ライブラリの配布用標準フォーマットを提供している。
gemを容易に管理でき、gemを配布するサーバの機能も持つ。
Rubyのライブラリには、gem形式で作られたライブラリがある(gem形式でないものもある)
gem形式で作られたライブラリは、gem
コマンドでインストールなどができる。
補足
汎用性の高い複数のプログラムを再利用可能な形でひとまとまりにしたものである。
車輪の再発明はせずに、便利なものはライブラリにまとめて共有しましょう!ということでしょうか。
OSというひとつの環境で、各種のソフトウェアの導入と削除、そしてソフトウェア同士やライブラリとの依存関係を管理するシステム
依存関係とは、例えば、
車を組み立てるときに、飛行機のエンジンは、車には大きさが合わないので、車用のエンジンを使う。
車には車用の部品を揃えて組み立てる。
Aというgemを使うには、A用のソフトウェア環境を整えてあげる。
という感じかと。
gemのパッケージ管理には、bundlerが使用される。
Bundlerを使ったGemパッケージの管理 - Ruby on Rails入門
Gemパッケージの種類やバージョンを管理し、複数のPCで必要なGemパッケージをインストールする仕組みを提供してくれます。
こちらも参考になりました!
Bundlerの使い方 - Qiita
gemコマンドの使い方
参考:初心者は覚えておきたいRubygemsのコマンドまとめ - Qiita
#インストール $ gem install <gem名> #アンインストール $ gem uninstall <gem名> #アップデートが必要か確認 $ gem outdated #アップデート(全gem) $ gem update #アップデート(gem指定) $ gem update <gem名>
gemの選定方法
安全性の判断に利用者数や更新頻度などを参考にすると良さそうです。
ライブラリの選定基準を決めておく | Simplie Post
・GitHubにリポジトリを持つこと
・Starが100以上ついていること
・直近1年でコミットがあること
・コミットの頻度が1回/月以上あること
・Issue/Pull requestが放置されていないこと
・ライブラリ依存が少ないこと
・アプリケーション本体と疎結合に導入できること
・ドキュメントが充実していること
・検索エンジンで情報が十分に収集できること
・必要としているテストケースにパスしていること