Showing posts with label フレームワーク. Show all posts
Showing posts with label フレームワーク. Show all posts

Saturday, 11 February 2012

Rails習得のための"Head First Rails"

薦められて"Head First Rails"を読みました。初心者に良書だと思います。

以前Railsの入門書で半分リファレンスのような本をを読んだのですが、正直言って途中で余りに殺風景で頭が内容に反応できなくなりました。"Head First Rails"は人間が読むように書かれています。

内容はScaffoldからAjaxとGoogle Mapsを用いたビジュアルなUIのアプリケーション開発までを説明。テストやオプティマイゼーションなどにはほぼ触れられていません。何点は少し古い本であり、Rails 2を基準として書かれているため、3を使用しているとコードサンプルなど自分で調べながら書き換えていかなければいけない事です。これは途中まではむしろ勉強になりました。内容がAjaxとの絡みになって修正を入れなければ動かないコードサンプルの箇所がかなり多くなってきた段階で、余りに時間をかけて一冊を読むよりもとにかく概要を理解することとのバランスを考慮してスキップする演習も出てきました。

早くちゃんとRailで開発ができるようになりたいと思いますが、物事に必要な適切な時間がありますよね。Wordpress, Joomla!などCMSのテンプレート開発であれば1、2週間ほど学べば取りあえずオリジナルのものが作れるようになったのですが、フレームワークはそこまで甘くないですね。

Wednesday, 8 February 2012

Rails 2&3 相違点

Rails2から3への移行ではメソッドのレベルで、remote_form_forが無くなり、form_forのオプションで:remote=>'true'を指定する事によりAJAXを実現する、ルーティングのメソッドがmap.connectからmatchに変わるなど、変化が多くあります。

Rails 以降のフレームワークは大体Railsの影響を受けているという話を聞きました。例えばCakeやDjango等でしょうか?ディレクトリ構造も相似点の一つで、画像などの静的ファイルはpublic以下のフォルダに配置するというのが通例という話でした。が、Rails3のディレクトリ構造を見ていて、画像やJavaScripなどの静的要素がデフォルトでappの下のassetsに入れられている事に気がつきました。

Rails 3 の進化によって、Railsに刺激を受けて生まれてきた他の言語のフレームワークと似ていると思われていた場所からも離れていっているのでしょうね。これから4や5がリリースされた時にはもっと全然違うフレームワークになっているというのも面白そうですね。開発者にとっては面倒ですが…。


Monday, 6 February 2012

フレームワークのディレクトリ構造

フレームワークは便利ですが、どうもどこの元のクラスから継承してMVCアプリケーションを作っていくか、コードの中で実際にどうやってconfigファイルを参照しているかなど分からないうちはとても気持ちが悪いです。一つフレームワークを知る手段としてフォルダ構造をTreevizというソフトで視覚化してみました。比較対象はRailsとCakePHP。フォルダ構造はフレームワークをインストール後、何もしないで視覚化したもの。



当たり前の事?に気がつかなかったのですが、CakePHPがアプリケーション構築に使うもとのクラスファイルをlibフォルダの下に持っている事です。対して、RailsではRailsをサーバにインストールした段階でそれらの元のクラスファイルはフレームワーク上で開発するアプリケーションとは分離してしまっているという事です。このため、CakePHPではアプリケーションインストール直下のlibというフォルダにたくさんファイルが入っている事が確認できます。
機会のある毎にもっとフレームワークの構成については調べていきたいです。