Warning: count(): Parameter must be an array or an object that implements Countable in /home/solisart/solisart.com/public_html/wp-includes/post-template.php on line 284
no-image

Ruby on Railsやってるやってる

ここ3週間ぐらい、Ruby on Railsの入門書「Ruby on Rails入門?優しい
Railsの育て方」を買って勉強していました。

一度通して読んでみてもよくわからず、何度もいろいろなところを読み直し
てなんとなくわかってきました。そして、Railsでアプリケーションを作り
始めています。

その間「楽天日記 バックアップ」と「携帯用Google Calendar」のプログ
ラムが止まっていますが、空いている時間で更新しようと思います。
「携帯用Google Calendar」については、sorceforge.netへ移行しようと思
いプロジェクト登録の申請をしているのですが、まだ返事がありません。
sourceforge.jp かrubyforgeにしようかな。

うれしいニュースですが、Googleでの検索で「携帯用Google Calendar」が
1番目に表示されるようになりました。「楽天日記 バックアップ」Google
での検索では20位ぐらいなのですが、Googleのブログサーチ(http:
//blogsearch.google.com/)で1番目に見つかります。ちゃんと更新しなきゃ
(^^;;

さて、Ruby on Railsですがフレームワークといえばそれまでですが、楽し
くできるようになっています。その精神は、面倒な作業を減らして、本来の
プログラムを作ることに専念できることです。

他のプラットフォームやパッケージソフトのように、アプリケーションの一
部が用意されるということはありません。そういったものはサードパーティ
という主旨で、どんどん中身は進化していくようです。

rubyも楽しくプログラミングができるようにした言語という思想があり、
バージョンアップを重ねて古い仕様が新しい仕様にとって代わるということ
はなくしているようです。これはJavaは1.0から1.2のJava2そして、Java5で
も大きく変わっていて、古い仕様は使われなくなっているようなので、そう
いったことは避けようとしているみたいです。

Railsが10分でWebアプリケーションができるといううたい文句は、嘘ではあ
りません。scaffoldという仕様ですね。プログラムの雛形を生成し、データ
ベースの定義をしておき、その後rubyのプログラムの一行にscaffoldと書く
と、それでテーブルの編集や新規作成、削除の一通りのアプリケーションを
つくることができます。雛形生成プログラムでscaffoldを実行しても、Web
ファイルを一式作成します。

あとは、他のテーブルの連携を記述したり、アルゴリズムをちょこっと書け
ば、慣れている人ならば10分でできる。実際にはデザインに凝ると時間はか
かりますが、完全にテンプレートになっているので、アルゴリズムに影響を
与えることはありません。

PHPもWebアプリケーションとしては良くできています。Smartyを使うと、デ
ザインとアルゴリズムをかなり分離することができます。アルゴリズム部分
は見た目がすっきりするし、デザインはhtmlを編集するのとほぼ同様です。
完全には分離するのは難しいし、小さなアプリケーションは分離するのが
帰って作業量を増やしてしまいます。

rubyやRuby on Railsの方が楽しいというのか、知的な刺激を触発されると
いうのかそんな感じがします。

このRails用にcron(スケジュールによるバッチ実行)が欲しかったのです
が、Rails Cronというのが見つかりました。
しかし、作者はこれを公開するのをやめたみたいです。
http://kylemaxwell.typepad.com/everystudent/2006/09/railscron_depre.html

残念です。普通のcronを使うか、自分でつくるしかないですかね。
普通のcronの場合は最初にrubyを実行するコストがかかるので、避けたいの
ですがね。