Ruby

「Rubyベストプラクティス」を読む4

4章はファイルやテキスト処理、正規表現をあつかっています。 目次:4章 テキスト処理とファイル管理 4.1 状態トラッキングによる行指向のファイル処理 4.2 正規表現 4.3 ファイルを扱う 4.4 tempfile標準ライブラリ 4.5 テキスト処理戦略 4.6 まとめ 4.1 …

「Rubyベストプラクティス」を読む3

3章の話は、2章と似たような優れたインターフェイスの作り方やRubyのリフレクションが紹介されています。 3章目次 BlankSlate:ステロイドで強化されたBasicObject 柔軟なインターフェイスを作る instance_eval()をオプション化する method_missing()とsen…

「Rubyベストプラクティス」を読む2

2章はメソッドの作り方に関する章。 良いメソッドを書くための、引数やブロックの使い方が書かれています。 色々なメソッドの引数処理 # 標準的な引数 def distance(x1, y1, x2, y2) Math.hypot(x2-x1, y2-y1) end # オプションパラメータのある引数 def lo…

「Rubyベストプラクティス」を読む1

数か月前に、一度「Rubyベストプラクティス」を読んでいたけれど、良い内容だったので 復習のために、もう一度読みなおしてみる。大事そうなところを日記に書いておこう。まずは1章から、テストの話。 メソッドを分割する 本に載っている例。以下のようなコ…

erbのyield

railsのviewの処理のように、erbのソースにyieldを使ってhtmlを埋めこむようなテクニックがあるけど、nanocのソースを読んでいたら、同様の処理を行うようなコードがあった。erbとyieldの使い方をメモしておこう。 erbのyieldは以下のように使える。 >> requ…

nanocのソースを読む(DirectedGraph)

nanocのDirectedGraphクラスのソースを読んだときのメモ。 このクラスが表現していることを理解するには、"有向グラフ"を検索してグラフの形を見ておくとわかりやすいかも。 irbでDirectedGraphインスタンスを作って、ソースのコメントに載っているサンプル…

nanocのソースを読む

nanocのソースを読んで、使えるコマンドなどを調べてみよう。まずは、nanocのコマンドであるnanoc3ファイルを見てみる。 以下のソースはほぼすべて抜粋です。 nanoc3 require 'nanoc3' require 'nanoc3/cli' # Run base Nanoc3::CLI::Base.shared_base.run(A…

nanocをつかう

HTMLジェネレータnanocをつかってみようと思います。 インストール [root@localhost ~]# gem-1.9.1 install nanoc3 インストールするとnanoc3コマンドがつかえるようになります。 サイト作成 create_siteでサイトを作成します。 [saliy@localhost ~]$ nanoc3…