Lokkaの続き
もう一度最初から、すべての行を理解する。
init.rbに。
$:.unshift File.join(File.dirname(__FILE__), 'lib')
とある。これなんだろう。
$LOAD_PATHの省略形か。
http://gilesbowkett.blogspot.com/2009/04/unshiftfiledirnamefile.html
↑でずいぶんけなされているが、そもそもわかりづらい。。
shiftがpopでunshiftがpushなんだよなぁ。どうしてなんだろう。対象が配列であり、スタックではないからかな。
rubyでcall_treeを作れるコマンドを探したところ、ruby-profというのがあったが、動かない。なにかいじる必要があるのだろう。
%w(a b c) は ["a", "b", "c"]のことなんだ。なぜw??
http://stackoverflow.com/questions/1274675/ruby-what-does-warray-mean
↑「Whitespace (w) separated array」のことなんだ。
%sもあり、こちらはシンボル %s_test symbol_は :"test symbol" と一緒。
- config.ru
- init.rb
- lib/lokka.rb ← DBや環境の設定、ライブラリの積込、lokka/*の積込。最後がlokka/app.rb
- lib/lokka/app.rb
- lib/lokka.rb ← DBや環境の設定、ライブラリの積込、lokka/*の積込。最後がlokka/app.rb
- init.rb
そして、app.rbでSinatra::Baseを継承し、あとはSinatraの設定に入る、と。
なるほど。
http://www.sinatrarb.com/configuration.html
↑sinatraの設定。
Procクラスってあるのね。Proc.new {|n| ...}で作ったインスタンスを.callでよぶんだ。
状態nを持つのね。
configureメソッドを呼んでいる。