連載
» 2011年02月28日 10時00分 公開

忘れやすい人のためのRailsリファレンスガイドRailsで目指せ、情熱エンジニア(4)(2/2 ページ)

[井上真,@IT]
前のページへ 1|2       

手早く「チート」する方法

 「cheat」(チート)というのは、「ずるをする」「だます」といった意味合いがありますが、その名もズバリ、「cheat」というツールがあります。ここでは「手抜きする」といった訳が適当でしょうか。

 cheatはコマンドラインで素早く使えるツールなので、簡単に文法だけをチェックしたいというときは、APIのドキュメントを調べるより、こちらのほうが手軽です。

 cheatは、以下のコマンドで簡単にインストールできます。

$ sudo gem install cheat

 例えば、RSpecというテストツールについて調べたいときは、以下のように「cheat rspec」と入力します。

$ cheat rspec
rspec:
  INSTALL
  =======
    INSTALL rspec
    =============
  $ sudo gem install rspec
    OR  
  $ ./script/plugin install git://github.com/dchelimsky/rspec.git
    INSTALL rspec_on_rails plugin
    =============================
  $ ./script/plugin install git://github.com/dchelimsky/rspec-rails.git

 私の場合は標準出力されたものをいちいち上から追って行くのもめんどくさいので、通常はUNIXのgrepコマンドと併用して使います。例えば、以下のように使います。

$ cheat rspec | grep change
  proc { thing.approve! }.should change(thing, :status).
  proc { thing.destroy }.should change(Thing, :count).by(-1)

 もっと詳しいcheatの使い方は、以下のようにして調べることができます。

$ cheat cheat

ローカルにドキュメントサーバを立てる

 Railsでは、いろいろなライブラリがgemという形で配布されています。この使い方を調べるときに、インターネットで検索してもよいのですが、実はドキュメントはRDocという形式でソースコードに直接記述されていることが多いです(RailsのAPIDocもそうです)。なので、知らないことは、gem自身に聞いてみましょう。

 以下のコマンドでgemのドキュメントサーバを立ち上げることができます。

$ gem server
Server started at http://[::ffff:0.0.0.0]:8808
Server started at http://0.0.0.0:8808

 ブラウザで「localhost:8808」とすれば、以下のようにインストールされたgemの一覧が表示されます。

インストール済みのgemのドキュメントをブラウザで見ることができる インストール済みのgemのドキュメントをブラウザで見ることができる

gemのソースをコマンド一発で参照!

 gem serverを使ってドキュメントを見ようと思ったときに、実際にふたを開けてみると何もドキュメントが書かれていなかった、というのはよくあることです。そうなると、最終手段としてライブラリのソースコードを直に見ることでしょう。

 でも、ソースコードがどこにあるのか分かりますか? もちろん、gemの格納先は“gem env”で調べることもできれば、“echo $GEM_PATH”で調べることもできます。しかし、そういうのをわざわざ調べるのがめんどくさい方には「gem-open」をお勧めします。

 以下のように、コマンドラインから興味のあるgemを指定すると、該当するソースコードをエディタなどで開くことができます。

$ gem open activesupport
gem open activesupportなどとすれば、指定したテキストエディタでソースコードを開ける gem open activesupportなどとすれば、指定したテキストエディタでソースコードを開ける

 gem-openのインストールの手順は、ほかでも出ましたが“gem install”です。

sudo gem install gem-open

 私は次のようにTextMateをエディタとして設定しています。

export GEM_EDITOR="mate"

 ソースコード全般の見方ですが、もしすでに調べたいメソッド名が分かっているのであればそのメソッド名を検索して、そこからソースを読み始めればよいと思います。それ以外の場所としては、README、親切な人の場合はexampleというディレクトリに使用例が収められていたりします。

 testやspecというディレクトリには、そのgemのテストコードが入っています。テストコード(特にunit test)を一から読んでいってもあまりにもローレベルすぎてチンプンカンプンだったりするのですが、たまにintegrationとかacceptanceというディレクトリを見かけることもあります。こうしたディレクトリには、そのライブラリの使用方法がテストとして記述されていて分かりやすいです。

ソースコードの例。integrationやacceptanceというディレクトリには使用方法がテストとして記述されていることがある ソースコードの例。integrationやacceptanceというディレクトリには使用方法がテストとして記述されていることがある

今回のまとめ

 新しい言語やフレームワークを習い始めるときというのは、情報量の多さに圧倒されるものです。「いつかは何も見ずにすらすら書けるようになりたい」と、誰もが夢見るものです。でも実際には情報も常に変化しているので、そういう日はRailsを始めて4年近くたった今も私には訪れていません。それよりも、「だいたいこういうことができる」という概要だけ押さえておいて、後は、リファレンスから必要情報に素早くアクセスできるような環境を整えておくことが重要かなと思います。

Index

忘れやすい人のためのRailsリファレンスガイド

Page1
「あれどうやるんだっけ?」を素早くこなすために
公式ガイドははずせない
手元でAPIを検索できる「Rails Searchable API Doc」
Macの辞書としてAPI Docを入れてしまう

Page2
手早く「チート」する方法
ローカルにドキュメントサーバを立てる
gemのソースをコマンド一発で参照!
今回のまとめ


前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。