【連載】
前回は、Javaの世界では中・大規模システム構築のためのノウハウが蓄積されていること、そのノウハウが小規模システムにおいては必ずしも有効とは限らないないことを述べた。そこで、Ruby/Ruby on Railsを使って小さく・すばやく開発し、システムの拡張が必要になったらJavaもしくは.Netプラットフォームに移行するモデルをご紹介した。また、Rubyの実行環境を整え、「Hello World」の出力方法についても触れた。
それに続く今回は、開発環境とRubyのソースコード、マニュアルの入手方法を説明する。本連載はJava開発者の皆さんをターゲットに置いており、できるだけJavaの場合と比較しながらRubyを紹介するというスタイルで解説を進めているが、(当然だが)JavaとRubyは全く別の言語であり、Rubyはさまざまな言語から長所を取り入れているため機能が豊富だ。したがって、Java側からの視点だけではとらえきれず、説明不足になることもあるかもしれない。今回用意する3点は、そのような場合に重宝するはずだ。ぜひ、本稿に倣って準備を進めてほしい。
前回はワンクリックインストーラによる実行環境の構築方法を紹介した。この方法はJavaの場合、javacコマンドとjavaコマンドでコンパイルして実行するようなもので、少々手間がかかる。また、エディタを使用しているが、開発者の生産性を上げるためには、コーディングをサポートする機能を追加するなどのカスタマイズが必要になるだろう。
Java開発者の多くは、Eclipseもしくはアプリケーションサーバベンダーの統合開発環境(IDE)を用いて、各種プラグインおよびツールとの連携やコーディング作業の効率化を図っているのではないだろうか。RubyでもJavaと同様、統合開発環境の整備が進められているので3つご紹介する。
Eclipse上で開発を行う場合は、RDT(Ruby Development Tool)プラグインが使える。使い方などは「もう一つのRuby開発ツール - RDTを使ってみた」の記事を参考にしてほしい。
CodeGearからRuby/RoR向け統合開発環境が発売されている。Delphiなどで定評のある、使い勝手の良いIDEを提供しているブランドだけあり、開発しやすい機能が数多く提供されている。詳しくは「EclipseベースのRails開発環境"CodeGear 3rdRail"を使ってみる」の記事を読んでほしい。
Java開発者に馴染みがあるNetBeansを使ってRuby開発ができる。2007年11月リリース予定のNetBeans6のリリースノートではRuby、JRuby、RoRをサポートすることが予定されている。
さらに、Rubyに特化したNetBeans Rubyが存在する。こちらではNetBeansからRubyに関係しないものを除いた「Ruby-Only IDE」というパッケージを提供している。プロジェクト単位でファイルを管理する機能やコード補完機能等が便利である。
また、NetBeansでは、前回紹介したJRubyを簡単に試すことができる。パッケージにJRubyが含まれているので、JRuby上でプログラムが実行されるように設定すればよい。RubyからのJavaライブラリ呼び出したり、JavaからRubyを使ってみたりといったことがごく簡単に行える。JavaとRubyの連携は着実に進んでおり、Java開発者から見てもプログラミングしやすいと感じていただけるだろう。パッケージはこちらからダウンロードできる。NetBeans Rubyのインストール方法などは後半のRuby on Railsの紹介時にもう一度ふれたい。
|
|
NetBeans Ruby 6.0 |
Rubyをインストールすると、IRB(Interactive Ruby)という対話型の実行環境が使えるようになる。コマンドプロンプトにて「irb」と入力すれば起動するので、簡単なスクリプトを作成して動作を確認したい場合などに使える。
IRBを終了したい場合は「exit」を入力して処理を抜ければよい。
ちなみに、拡張パッケージをインストールすると補完入力など、シェルと同様の機能が使えるようになる。詳しくは「Rubyの小技 - irbに補完・シンタックスハイライト機能をつけてみる」を参照いただきたい。
さらに、Web上に公開された実行環境もある。それがTry Ruby!だ。
こちらでは対話型の実行環境がブラウザ上から利用できるので、気軽にRubyを使うことができる。
Rubyのソースコードは公開されており、Rubyの公式サイトのダウンロードページから入手することができる。前回のインストールではバイナリをダウンロードして環境を作ったが、可能であればソースコードもダウンロードしておきたい。なぜなら、Rubyの添付ライブラリはRubyで書かれているのだが、ソースが読みやすく、コーディングの参考になるためだ。また、Rubyはライブラリが充実しており、簡潔な記述が可能になっている。したがって、どのような処理がライブラリ側で記述されているのか見たい方が少なくないと予想する。
Rubyにはマニュアルが存在する。最新版はこちらだ。ダウンロードして参照することも可能である。
日本語で読めるマニュアルが公開されていることもRubyの人気の1つであるように思う。マニュアルにはサンプルも記載されているので、プログラムを動かしながらRubyを学んでいくことができる。
本連載では範囲を絞ってRubyの文法を紹介する予定なので、説明を割愛する部分もいくつかある。したがって、実際にプログラミングを始めると、例えば「この部分の用法がわからないので、もう少し詳しく知りたい」などと思うケースもあるだろう。そのような場合に、このマニュアルは重宝するはずだ。
次回も引き続きRubyについて説明する。Javaとの大きな違いをご紹介したい。
HTML 5設計の原理原則とは - "HTML Design Principle"公開される
【コラム】Java API、使ってますか? 第32回 Java EE環境に統一されたコンポーネントモデルを提供するJSR 299 その1
| トマトを食べれば痩せられる!? -京大ら、新発見の成分で肥満改善効果を実証 [21:00 2/10] |
| JAXA、液体シリコン中に残存する共有結合を観察 -大口径ウェハの実現に期待 [20:11 2/10] |
| NEDOなど、熱膨張が小さな樹脂複合材料ペレットの量産化に成功 [19:22 2/10] |
| 理研、一般顕微鏡を蛍光顕微鏡に強化できるアダプタを試作して性能を実証 [19:15 2/10] |
| 天の川のブラックホールが小惑星を飲み込んでいる - NASAが発表 [18:08 2/10] |
|
熊田曜子が最新DVDで美乳引き立つゴールドビキニ姿を披露『WOMAN~本性~』 [22:30 2/10] エンタメ |
|
「グラビア甲子園」特別賞の新人・藤村椿の"フレッシュ・ヒップ"が弾ける! [22:30 2/10] エンタメ |
|
TVアニメ『エウレカセブンAO』、新キャラおよびメカの設定画を紹介 [22:21 2/10] ホビー |
|
宮本恒靖を迎え「選手のセカンドキャリア」を考える! [22:08 2/10] キャリア |
|
NMB48山田菜々・福本愛菜、恋人モードで妄想セリフ!? [22:08 2/10] キャリア |