BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Rubyのツール:Yard 0.4はライブ・ドキュメント・サーバを追加、Gem Bunlderは依存関係を取り扱う

Rubyのツール:Yard 0.4はライブ・ドキュメント・サーバを追加、Gem Bunlderは依存関係を取り扱う

原文(投稿日:2009/11/15)へのリンク

YARDはRubyのドキュメント生成ツールであり、コメント文字列中のJavadocスタイルのメタデータやプラグインといったいくつかの機能を追加している

新しいYARD 0.4.0には刷新されたテンプレートシステムといったようないくつかの改善点がある。新しい機能を使うとある特定のメタデータ値を持つコードのみにドキュメント生成を限定することができる。

大きな新しい機能は、ライブ・ドキュメンテーション・サーバである:

まったく新しいユーザコメントシステムはDISQUSを使っており、個々のメソッドページで利用可能である。ユーザは、メソッドに関する追加情報を1カ所にまとめて投稿することができるようになる。

このサーバの公開インスタンスはhttp://yardoc.org/docsで利用可能であり、そこには合わせてすでに利用可能なプロジェクトの文書のリストがある。1つの例がRailsである。

Gem BundlerはあるプロジェクトでのGemの依存性を管理し、実行時にGemがrequireされるようにコントロールすることを簡単にする新しいツールである。

Gem Bundlerの制作者の1人、Yehuda Katz氏はこのツールの背後にある考えを説明している

Bundlerを使えば、アプリケーションそのものとは別に全ての依存関係の仕様をおくことができるようになるはずだ。言い換えると、アプリケーションを開始する必要なくアプリケーションの依存関係を決定することが可能になる。[..]。
いったん依存関係が解決されると、再度Rubyforge(やgemcutter)をチェックすることなく新しいシステムでそのアプリケーションを起動し、動かすことができる。このことはコンパイルされたgemにとっては特別に重要なことである。(必要とされているgemのリストを一度取得して、要求どおりにリモートシステムでコンパイルすることができるようになるだろう。) [..]
それにもまして、BundlerはRubyアプリケーションに再現可能なインストール方法を提供することになるだろう。新しいgemのリリースやリモートサーバのダウンが、アプリケーションのインストールの成功に影響を与えることはなくなる。

依存関係はGemfileにリストとして書かれており、デフォルトのGemソース、あるいは、カスタムソースから依存パッケージを取得することができる。

依存関係は名前付き環境に入れてグループ化することもできる。環境は'production'、'testing'などといった異なる状況下でアプリケーションを実行する必要がある場合に有用である。Gem Bundlerによって見つけられたGemはデフォルトの環境ではBundler.require_envという形で、あるいは、例えばBundler.require_env(:testing)のような環境の名前をその中に渡す形で環境の指定を要求する。

もっと完全なイントロダクションがGem Bundlerを紹介しているEngineYardのブログ記事、またはYehuda氏の Gem Bundlerの紹介で利用可能である。後者では、多くの詳細まで踏み込み、Gem BundlerがRailsとどのように統合されているかを説明している。

この記事に星をつける

おすすめ度
スタイル

BT