[#44578] Ruby初心者が作りました — Kabu and Ruby管理人 <kabu_and_ruby@...>

http://www.geocities.jp/kabuandruby/index.html

26 messages 2008/02/06

[#44691] ”Rubyアプリケーションプログラミング”の伝言サーバの使い方 — "Yangkook Kim" <yangkookkim@...>

キムと申します。オーム社から出版されている書籍、"Rubyアプリケーションプログラミング"のP267~275に掲載されている伝言サーバー&クライアントの利用の仕方がわかりません。質問を要約すると次の2点です。1、サーバーが正常に起動されているかどうかわからない。2、書き込みクライアントで入力をサーバーに送信する方法がわからない。

8 messages 2008/02/24

[ruby-list:44567] Re: Rails以外のフレームワーク

From: "Keita Yamaguchi" <keita.yamaguchi@...>
Date: 2008-02-04 13:58:03 UTC
List: ruby-list #44567
こんにちは。
山口と申します。

> 皆さんでRails以外のフレームワークを使った経験、実績の
> ある方がいらしたら、ぜひ感想、使用感などをお聞かせください。

現状活発に開発中なので色々と変動も大きいため
あまり現実的な選択肢ではないかも知れませんが、
最近微妙に注目を浴びているRamazeをご紹介させて頂きます。

http://ramaze.net/

Ramazeは、軽量フレームワークというだけでなく、
様々な点で選択が自由である所に特徴があります。

- MVCパターンはもちろんのこと、VCパターンだけでも可
- テンプレートエンジンは13種類(Tenjin, Amrita2, XSLT, Liquid, Haml 等)揃っています
- ORMは Sequel, Og, Datamapper, ActiveRecord 等好きなものを使えます
- logger には Analogger, Syslog, KNotify, XOSD 等好きなものを使えます
  複数の出力先を指定することも出来ます
- Rackを採用しているのでHTTPサーバも好きなものを使えます

また、Ramazeは動かすのがとても簡単です。

require 'ramaze'

class MainController < Ramaze::Controller
  def index
    'Hello, World!'
  end
end

Ramaze.start

加えてフィルタによってレンダリングの後処理を簡単に実現できます。

Ramaze::Dispatcher::Action::FILTER << proc {|response|
  response.header['hello'] = "world"
}

現在はGZipフィルタとLocalizationフィルタくらいしか用意されていませんが、
書くのはとても簡単だと思います。

プラグインの作成も簡単です。

module Ramaze::Contrib::Test
  def self.setup
    Inform.info "Test module set up"
  end
end

のようなコードをcontribというディレクトリ以下にtest.rbという名前で保存し、

Ramaze.contrib :test

を呼び出すだけです。

RamazeによるWebアプリ作りの感想ですが、
私はRailsと違って好き勝手がまかり通る点が気に入っています。
もちろん好き勝手をやる分
Railsの良さの一側面は確実に失なわれていると思いますが、
個人で作る場合や少人数で開発する場合であれば
今後良い選択肢になるだろうと思います。

またRailsより覚えなければならない事が少ないので
私のように記憶力に自信のない人向きだと思います。

以上、大変長くなって申し訳ありませんが、
御興味をお持ち下さいますと幸いです。
バグがたくさん残っているようなので少しでも多くの方の目にとまって
誰か色々と直してくれるようにならないかなー、などと思っております。

---
北海道大学文学研究科D3
山口慶太

In This Thread