トップページ > 企業情報 > TOUAグループにおけるRubyへの取り組み

TOUAグループにおけるRubyへの取り組み

PROGRAMMING Language Ruby
■Rubyとは

Rubyとは、オープンソースで開発・公開されているプログラミング言語です。

Rubyは1993年にまつもとゆきひろ氏(通称Matz)によって開発が開始されました。
1995年にインターネット上で公開されると、徐々にユーザーと開発者を取り込みながら成長を続け、2011年には国産プログラミング言語としては初めてJIS規格(JIS X 3017)も策定されました。 近い将来にはISOでも規格化されて国際規格ともなる見込みです。

Rubyがこのように人々を惹きつけた理由は、その背景にある哲学が最大の要因でしょう。
Rubyは、ユーザーが「楽しく」プログラミングできることを目的として設計されています。
そもそも、コンピューターは本来は人間の道具であり、人間がコンピューターのために苦労するのは本末転倒の現象です。
プログラミングとは、人間の意図をコンピューターに伝える、という行為に他なりません。
であれば、プログラミング言語こそが、人間の苦労を取り除くべき、最初の対象であるはずです。
Rubyが実現しようとしているのは、そのような、プログラミング上の本来不要な苦労を取り除くことです。
煩雑な「おまじない」抜きでプログラムが書けること、冗長な繰り返しなしでシンプルにコードで意図を表現できること、よくやる処理は処理系に取り込んでユーザーにわざわざ書かせたりせず、 一方でレアで複雑な処理もきちんと記述できるだけの機能群を提供すること……。
そうすることによって、ユーザーは、人間が本当に集中すべき課題に、全力を注ぎ込むことができるようになります。
それが、Rubyが提供しようとしている「楽しさ」なのです。

さて、2004年にデンマーク生まれのプログラマDavid Heinemeier Hansson氏(通称DHH)によってRuby on Rails(通称Rails)というWebアプリケーションフレームワークが公開されてから、 Rubyを取り巻く環境は激変しました。
RailsはRubyによるプログラミングの楽しさをWebアプリケーション開発の現場で具現化するフレームワークです。
Webアプリケーションの開発に必要な全ての機能を提供するフルスタック構成、規約を基にした自動設定でコード記述量を激減させる設計思想、強力な自動コード生成機能などによって、 Railsは圧倒的な生産性を誇るWebアプリケーションフレームワークとして世界を席巻しました。
Railsは爆発的に普及し、それまでRubyを発見していなかった人々の元へRubyを届けました。
現在、RubyとRailsはWebアプリケーション開発において確固とした地位を築いており、特に北米地域ではWeb系ベンチャーの半数がRubyプログラマを採用している、とさえ言われています。

■TOUAグループにおけるRubyへの取り組み

TOUAグループでは、早くからRubyの持つ可能性に注目し、Rubyによるシステム開発に取り組んできました。
まだRubyが広くは知られていなかった2000年には、早くもRubyによる商用システムを納品しています。
また、単にRubyを利用するだけではなく、Rubyのコミッタ(Rubyのソースコードを直接編集する権限のある開発者)を雇用することを通じて、Ruby自体の開発にも貢献しています。

TOUAグループでは、Ruby on RailsによるWebアプリケーション開発はもちろん、Rails以外のフレームワークを利用したWebシステムや、Web以外の分野でのRubyの利用、 老朽化したシステムのRuby/Railsによるリプレース、既存システムとRuby/Railsによる新システムの結合など、様々な分野でRubyの活用を提案・推進しています。

もちろん、RubyやRailsは唯一無二の選択肢ではなく、多数の開発言語・フレームワークの一つです。
TOUAグループでは、お客様の望まれるシステムを見極めた上で、適材適所でRubyの活用をご提案します。

■この記事の著者について
TOUA西日本取締役 中村宇作

中村宇作:TOUA西日本取締役(技術担当)。
1990年代末よりRuby開発コミュニティに参加し、2000年にRubyの7人目のコミッタ(2011年10月時点では80人弱)に就任。
2011年10月時点でのRubyに対する貢献規模は、コミット数(ソースコードの変更を登録した回数)ベースで5%強に及ぶ。
Ruby開発における主な担当はWindows対応。
特に、64bit Windows対応の開発は主に著者によって行われた。
Rubyリポジトリ上での名前は「usa」。