Ruby on Railsへの取り組みについて簡単に紹介します。
# はてブされやすそうなタイトルをつけてみました。:)

アークウェブでは元々PHPを利用した開発をメインに行ってきましたが、2006年2月25日に「RailsによるアジャイルWebアプリケーション開発」が発売された頃から勉強会や評価をしはじめました。

2006年5月頃に受注したWeb 2.0的なサービスの案件で、Railsを使った大規模なシステム構築に携わりました。この案件の開発は2007年6月までの約1年間も続き、大変多くのことを勉強することができました。

また、この案件をきっかけとして、昨年の前半から社内のシステム開発スタッフ全員がRailsによる開発ができるようになろうという目標を掲げ、本格的に社内勉強会を行ってきました。

勉強会の内容は、Sandbox Wikiの方にまとめられています。

先日リリースしたTwitterのマッシュアップサービス「necoったー」は、私とSEの小沼で開発しました。
(また、現在開発中のTwitterマッシュアップ第3弾もRuby on Railsで構築中です。リリースしたら是非使ってみてください。)


僕たちが感じているRailsのよさは本当にたくさんありますが、Railsを作った本人であるDavid Heinemeier Hansson氏が上記の本の中で述べている「Railsを推薦する理由トップ10」から、とくに実感しているものをピックアップしてみました。

" />
ホーム » ビジネスブログ » Ruby on Rails(システム開発) »

アークウェブがRuby on Railsを使う7つの理由

2007年8月 2日

アークウェブがRuby on Railsを使う7つの理由

投稿者 ARK-Web

志田です。

今回はアークウェブのRuby on Railsへの取り組みについて簡単に紹介します。
# はてブされやすそうなタイトルをつけてみました。:)

アークウェブでは元々PHPを利用した開発をメインに行ってきましたが、2006年2月25日に「RailsによるアジャイルWebアプリケーション開発」が発売された頃から勉強会や評価をしはじめました。

2006年5月頃に受注したWeb 2.0的なサービスの案件で、Railsを使った大規模なシステム構築に携わりました。この案件の開発は2007年6月までの約1年間も続き、大変多くのことを勉強することができました。

また、この案件をきっかけとして、昨年の前半から社内のシステム開発スタッフ全員がRailsによる開発ができるようになろうという目標を掲げ、本格的に社内勉強会を行ってきました。

勉強会の内容は、Sandbox Wikiの方にまとめられています。

先日リリースしたTwitterのマッシュアップサービス「necoったー」は、私とSEの小沼で開発しました。
(また、現在開発中のTwitterマッシュアップ第3弾もRuby on Railsで構築中です。リリースしたら是非使ってみてください。)


僕たちが感じているRailsのよさは本当にたくさんありますが、Railsを作った本人であるDavid Heinemeier Hansson氏が上記の本の中で述べている「Railsを推薦する理由トップ10」から、とくに実感しているものをピックアップしてみました。

1. Webアプリケーションをアジャイルに開発できる
データベースの構造変更のバージョン管理の仕組みであるマイグレーションを活用することで、リリースをこまめにしていくことができました。
参考) プロトタイピングに効くRoRのDB移行・変換機能 ? @IT情報マネジメント

2. Webページにさまざまな効果を持たせてクールにすることができる
サーバーサイドからJavaScriptを実行させるRJSは、Ajaxアプリケーションの構築で大変重宝しました。
参考) Rubyist Magazine - RubyOnRails を使ってみる 【第 7 回】 RJS を使ってみる

3. フレームワークの世話から開放され、アプリケーション開発に専念できる
Railsは、「convention over configuration」(設定より規約)を特徴の一つとして掲げています。
これまでのMVCフレームワークでは一般的だった、
 1. 設定ファイル(XML)をいじって
 2. さー、コーディングするぞ
という開発サイクルから開放され、設定ファイルの設定ミスや手間が減りました。

4. アプリケーションが大きくなっても保守性が維持される
MVCはもちろんのこと、helperや、lib、component、partialなど、用途別にコードを書く場所が細かく規定されているので、コードがシンプルに保たれ、他人のコードを読むストレスが少なくなりました。これも助かりました。

5.テストを組み込み機能で簡単に行える
フレームワークを読み込んだ上で、ユニットテストを実行してくれる枠組みが提供されているため、非常に手軽に使うことができます。
網羅的なテストを用意するのはあまりにも大変ですが、疎通の振舞いを書き、簡易に部分実行して確認できるツールとして大変重宝しました。
参考) 勉強会/Railsによるテスト作成 - ARK-Web SandBox Wiki

6. メタプログラミングにより、より高い(人間に近い)レベルでプログラミングができる
たとえば、ActiveRecordが提供する

frind = Friend.find_or_create_by_name("志田")

といったメソッドや、ActiveSupportを使った
now.beginning_of_month.midnight

のような記述を見ると、より英語のような自然言語に近いレベルでプログラミングができると感じます。

7. コードジェネレータがお膳立てしてくれる
scafoldを使うと特定のデータへの一覧表示、追加、修正、削除を行うWebインターフェースの雛形を作成してくれます。
たとえそのデータの「一覧表示」と「追加」しか必要としない場合でも、修正と削除の機能を無効化して、scaffoldで生成されたコードをベースに開発することで、開発スピードも保守性も上がりました。
参考)IBM Ruby on RailsによるWebアプリケーションの高速開発 - Japan

と、いろいろよいところが満載ですが、実は使ってみて今後の課題だと感じる点もいくつかあります。
これについては次の記事で書きたいと思います。


アークウェブはこれからも一層、Railsを使ったソリューションに力を入れて取り組んでいく方針です。

Ruby on Railsによる開発のご相談などありましたら、是非お声がけください。

投稿者 ARK-Web : 2007年8月 2日 16:31

カテゴリー: Ruby on Rails(システム開発)

タグ: アジャイル , Ruby on Rails


Movable Type用高機能メールフォーム生成プラグイン A-Formの詳細へ
Movable Type用会員限定サイトプラグイン A-Memberの詳細へ
Movable Type用予約サイト構築プラグイン A-Reserveの詳細へ
ARK-Web×CSR(企業の社会的責任)

アークウェブの本

Zen Cartによるオンラインショップ構築・運用テクニック―オープンソース徹底活用

Zen Cartによるオンラインショップ構築・運用テクニック―オープンソース徹底活用

内容充実のZen Cart公式本(v1.3対応)がついに発表です。アークウェブのスタッフをはじめZen-Cart.JPの中心メンバーが共著で執筆しました。続きを読む

Movable Type プロフェッショナル・スタイル

Movable Type プロフェッショナル・スタイル

ビジネスサイト構築におけるCMSとしてのMTの活用方法について、豪華執筆陣による実践的MT本です。八木が共著で執筆しました。続きを読む

Web屋の本

Web屋の本

Web 2.0時代の企業サイトの構築・運用などの戦略を考える「Web屋の本」 (技術評論社)を、中野・安藤が執筆しました。続きを読む

新着はてブ

Loading

アーカイブ

応援しています

  • キッズ・セーバー
  • ソロモン・リリーフ ─ソロモン諸島を応援する有志による、震災復興支援プロジェクト─

    (終了しました)

RSS配信

 

サービスおよびソリューション一覧


最新情報・投稿をチェック


このページのトップに戻る

Photo by A is for Angie

Powered by Movable Type Pro 6.0.1