はじめよう Ruby on Rails


上の記事でも取り上げた「はじめよう Ruby on Rails」(高橋征義監修・かずひこ、喜多川豪著)について。10日前に買い、現在時点で8割は読んだ。一番重要な8割を読んだと思うので、一応、読後感を書いておこうと思う。


一言で言えば、とてもよい本である。先輩プログラマ高橋さんと駆け出しプログラマ鈴木さんの二人が XP(eXtreme Programming) でいうところのペアプログラミングをしながら、Ruby on Rails に取り組んでいく、という設定になっている。Ruby on Rails の使い方を学びながら、同時に XP も理解できてしまう。「一回で二度おいしい」本である。


しかし、だ。私は、どうしても違和感を取り除けなかった。というのは、単純にいくら読んでも Rails が理解できないのである。使い方は極めて簡潔かつ明快に記されている。(さすがあの「高橋メソッド」の高橋さんだけのことがある)しかし、そこで出てくるさまざまなメソッドがいったいどのクラスに属するのかという説明はほとんどなく、したがって私としては、奥歯にモノが挟まったような状態で読み進めるほかなかった。


もちろん、私は高橋さんを責めているわけじゃない。初心者に Rails の複雑なクラス構成を見せたら混乱させるだけだ。それに「やり方」さえ知れば「動作原理」なんてどうでもいいというプログラマにとっては、そんなもの邪魔なだけである。しかし、私は個人的に「それはどうやって動いているのか?」ということがある程度理解できないと気持ち悪くて使えないたちである。結局は、必要な部分については、Railsソースコードを追いかけていくしかなさそうだ。だから、フレームワークというのは、元来、敷居が高いものなのである。


しかし、それにしても不思議なのは、Java の世界で Struts というフレームワークが幅を利かせていることである。私は、Struts をほとんど知らないので偉そうなことはいえないのだが、おそらく(文字処理に不器用な)Java で書かれたフレームワークというだけで、とてつもなく複雑な代物ではないかと想像している。それを正確に使いこなすには、Struts の内部動作に関する深い理解が必要なはずである。が、ちまたの多くの Java プログラマの拙いコーディング能力から察するに、彼らが Struts の内部構造に関する理解をもっているようにはとても思えないのだが・・・。おそらくは、呪文のようにさまざまな「決まりごと」を暗記することで対応しているのだろうな。だとすると、そのプログラミングは、苦痛に満ちたものだろうな、とか妄想してみる。


おそらくは、RoR の方が Struts よりは内部構造が理解しやすいだろう。そう期待するからこそ、なんとか RoR を勉強しようと思っている次第である。