« livedoor Wireless がFON対応に | トップページ | ロック・フィールドのオシャレなオフィス »

2008年2月 5日 (火)

Ramazeがけっこういい

ruby-list MLはずーっとROMな感じなんですが最近rubyから遠ざかり気味なので流し読みばかりの毎日です。しかし、「Rails以外のフレームワーク」というお題で紹介されたRamazeというフレームワークがちょっと気になりました。

Ramazeは軽量で"effortless web development"と副題がついているようにシンプルで簡単な記述で開発ができるWEBフレームワークのようです。現在の最新バージョンは0.3.5です。
Railsに比べて自由勝手がきくのが特徴のようで、多種のテンプレートエンジンやHTTPサーバに対応しており、MVCでなくVCモデルでも開発ができるようです。

パッと見、なんだか細かいものが簡単にできそうなイメージだな。と思ったのでさっそくインストールしてみました。

インストールはRubygemsでできます。
---
> gem install ramaze
---

他にモジュールを要求されたら入れておきます。
ちなみにWindowsの場合、Win32Consoleも入れておくと、コンソールのログに色がついてちょっと見やすくなります。
---
> gem install win32console
---

とりあえず、プロジェクトをつくって、画面を表示してみましょう。
restaurantをつくってみます。
---
C:\usr\ruby\ramaze> ramaze --create restaurant
Creating project restaurant
Copying skeleton project to new project (C:/usr/ruby/ramaze/restaurant)
...
Create directory: 'C:/usr/ruby/ramaze/restaurant/model'
Create directory: 'C:/usr/ruby/ramaze/restaurant/controller'
Create directory: 'C:/usr/ruby/ramaze/restaurant/public'
Create directory: 'C:/usr/ruby/ramaze/restaurant/public/css'
Create directory: 'C:/usr/ruby/ramaze/restaurant/public/js'
Create directory: 'C:/usr/ruby/ramaze/restaurant/spec'
Create directory: 'C:/usr/ruby/ramaze/restaurant/view'
Copy file: 'C:/usr/ruby/ramaze/restaurant/controller/main.rb'
Copy file: 'C:/usr/ruby/ramaze/restaurant/public/css/ramaze_error.css'
Copy file: 'C:/usr/ruby/ramaze/restaurant/public/favicon.ico'
Copy file: 'C:/usr/ruby/ramaze/restaurant/public/js/jquery.js'
Copy file: 'C:/usr/ruby/ramaze/restaurant/public/ramaze.png'
Copy file: 'C:/usr/ruby/ramaze/restaurant/spec/main.rb'
Copy file: 'C:/usr/ruby/ramaze/restaurant/start.rb'
Copy file: 'C:/usr/ruby/ramaze/restaurant/view/error.xhtml'
Copy file: 'C:/usr/ruby/ramaze/restaurant/view/index.xhtml'
Copy file: 'C:/usr/ruby/ramaze/restaurant/view/page.xhtml'

Start your new ramaze app: ruby restaurant/start.rb
---

という感じでディレクトリやスケルトンが生成されます。
これらを変更してつくっていくというのが基本スタイルのようです。

とりあえずこの時点でも起動すると画面は表示されます。
start.rbを実行すればスケルトンが起動します。
---
> cd restaurant
> ruby start.rb
[2008-02-05 15:25:42] INFO   Starting up Ramaze (Version 0.3.5)
[2008-02-05 15:25:42] INFO   Public root: C:/usr/ruby/ramaze/restaurant/public
[2008-02-05 15:25:42] INFO   Template root: C:/ruby/ramaze/restaurant/view
[2008-02-05 15:25:42] DEBUG  mapped Controllers: {"/"=>MainController}
[2008-02-05 15:25:43] INFO   Adapter: Ramaze::Adapter::WEBrick, testing connection to 0.0.0.0:7000..7000
[2008-02-05 15:25:43] INFO   and we're running: 0.0.0.0:7000..7000
[2008-02-05 15:25:43] INFO   WEBrick 1.3.1
[2008-02-05 15:25:43] INFO   ruby 1.8.6 (2007-09-24) [i386-mswin32]
[2008-02-05 15:25:43] DEBUG  TCPServer.new(0.0.0.0, 7000)
[2008-02-05 15:25:43] DEBUG  Rack::Handler::WEBrick is mounted on /.
[2008-02-05 15:25:43] INFO   WEBrick::HTTPServer#start: pid=2928 port=7000
---

ブラウザで http://localhost:7000/ にアクセスします。
200802051

Welcome画面が表示されました。簡単な開発の説明も記載されていますね。

今Ramaza本家のScreencastsTutorialsを見ていっているんですがなるほどRailsに比べて軽い気持ちで開発できそうな感じです。きまりごとがシンプルで見通しが利きやすく、一人でちょっと画面をつくりたいっていうニーズにはRailsより相性がいいかもしれません。

バージョンからみるとまだまだ開発途中のフレームワークのようで実際の開発にはまだ使えないのかもしれませんが、今後開発が進んで安定するとRuby開発の新たな選択肢となるかもしれませんね。

|

« livedoor Wireless がFON対応に | トップページ | ロック・フィールドのオシャレなオフィス »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/125677/10271128

この記事へのトラックバック一覧です: Ramazeがけっこういい:

« livedoor Wireless がFON対応に | トップページ | ロック・フィールドのオシャレなオフィス »