タグ

ブックマーク / i.loveruby.net (3)

  • ミニパターン集

    $Id: minipattern.rd,v 1.8 2003/07/29 15:55:24 aamine Exp $ いかにも Ruby 特有ぽいものを中心に小技をあつめました。 Cookbook なんかと違うのは、具体的な課題を解決する方法ではなく 言語上のパターンにしぼったこと。 インスタンス変数の遅延初期化 初期化されているかどうかわからない インスタンス変数を初期化するときは ||= を使う。 @ivar ||= "" # @ivar が既に非 nil ならばそのまま、nil なら "" を代入 1.6.2 まではこう書くと初期化されていない場合に警告が出ていたのだが、 1.6.3 からは ||= を使う場合に限り警告が出なくなった。 Mix-in のメソッド中での初期化などに便利である。 コンテナの遅延初期化 例えば配列のハッシュを作るとき、ハッシュのキーになにが来るか わからな

    ihag
    ihag 2008/04/21
    「コンテナの遅延初期化」がとても直観的ですばらしい.もうHash.new {}は使わないときめた / あと個人的にはsystem(*%W<ls -l #{file}>) とかよく書く.メタ文字があっても/bin/shが起きないのがチャームポイント
  • 『Rubyソースコード完全解説』サポートページ

    書籍『Rubyソースコード完全解説』はインプレスダイレクトで御予約・御購入いただけます。 書籍紹介ページ: http://direct.ips.co.jp/directsys/go_x_TempChoice.cfm?sh_id=EE0040&spm_id=1&GM_ID=1721 HTML 版 『Rubyソースコード完全解説』の文を HTML 形式で無償公開しています。 (2004-02-17) 全章を公開しました。 初校の修正を紙上で行ってしまったたため、現在公開しているのは初校段階の原稿です。 従って書籍では修正されているところがまだ修正されていない場合があります。 順番に修正していくつもりではいますが、いつ修正できるとは断言できません。 予め御了承願います。 なお、その逆に一部の章が出版時より新しい場合もあります。 オンラインで閲覧 tar.gz 形式でダウンロード zip 形式で

    ihag
    ihag 2007/12/27
  • ソースコードを読むための技術

    $Id: readingcode.html,v 1.13 2003/12/06 00:01:08 aamine Exp $ 2006-05-02 gonzui 追加。thanks: 冨山さん 2003-12-03 ltrace と sotrace を追加 2003-12-03 ツールのところに DDD を追加。thanks: 和田さん 2003-05-27 VCG, SXT などについて追加。thanks: 梅沢さん 2003-05-27 これもすっかり忘れていた strace, ktrace, truss, etags などについて追加 2002-08-30 すっかり忘れていた ctags を追加 2002-07-07 匿名希望さんからメールでいただいた情報を追加 (動的コールグラフ) 2002-06-13 日記経由でいただいた意見をもとに文章を追加。thanks: 柳川さん、まつもとさ

  • 1