FM牛鍵屋本舗

プログラマ(弱)の日々精進系ブログ

RakeとGemとBundlerについて微妙な理解をするよ!!

たぶん、僕が仕事で書いてるJavaにとってはMavenとかGradle、ビルドツールとしてはAntなどに当たるんでしょうが、Javaを基準に理解をしようとしてもなかなか深まらない、これら。 とりあえず現時点での認識を備忘録的に記載しておきます。

そんな情報の不正確さについて長々と前置きを…。

Gem(RubyGem)

標準のパッケージ管理ツールgem install xxxで依存するgemパッケージを含めてインストール出来る。 ご飯屋さんで言えば、単品メニューか、それに味噌汁がついてくる感じだ。 gem helpgem help [command]で使い方が出る。 JavaでいえばMavenのpomって感じだ。

Rake

ビルドツールだ。Javaで言えばAntだ。 ご飯屋さんで言えば、財布にお金を入れたり、お店に向かったりすることだ。多分。

Bundler

自身もgemパッケージでgem install bundlerでインストールが可能な、アプリケーション単位でのパッケージ管理ツール。 言うなればコース料理か…。 bundle initを行うことで作成出来るGemFileを用いて、アプリケーション内(のさらに各工程ごと)に必要なGemの管理ができる。 また、bundle gemコマンドを利用することで、gemパッケージの雛形も作れてしまう。 なお、GemFile自体は他のフレームワークでも生成されることがあるそう。