内容紹介
Ruby は、まつもとゆきひろ氏によるオブジェクト指向プログラミング言語で、楽しく生産的なプログラミングを支援する。言語本来の強力さと使いやすさに加えて、アジャイル開発との相性の良さや、Webアプリケーション開発フレームワークRuby on Railsの圧倒的な人気などに後押しされて、今では日本だけでなく世界中で使われている。
本書は、Ruby1.9 の定番解説書“Programming Ruby 1.9: The Pragmatic Programmers' Guide”を、作者自身の監訳で翻訳発行するもの。(日本語版は、言語編とライブラリ編の二分冊)
出版社からのコメント
この日本語版は、原書の第I 部~第III 部からなる『プログラミングRuby 1.9 言語編』と、原書の第IV部からなる『プログラミングRuby 1.9 ライブラリ編』の2 巻構成になっています(原書は1 巻構成)*9。各巻の各部分にはそれぞれ特色があり、Ruby の異なる側面に焦点を当てた内容になっています。
『プログラミングRuby 1.9 言語編』の「第I 部Ruby の基礎」はRuby のチュートリアルです。まず、第1 章では、皆さんのコンピュータでRuby を動かすための基本情報を提供します。続く第2 章では、Ruby独特の用語や概念について簡単に説明します。この章では、他の章の内容を理解するために必要な基本的なシンタックスについても触れています。第3 章以降は、Ruby 言語をトップダウンで概観するチュートリアルです。クラスとオブジェクト・型・式・その他Ruby という言語を構成するあらゆるものについて説明します。最後に、ユニットテストとトラブルシューティングに関する2 つの章で第I 部を締めくくっています。
Ruby の素晴らしい点のひとつに、周囲の環境との高い統合性があります。「第II 部Ruby とその周辺」では、この点について解説します。ここでは、Ruby の使い方に関する実用的な情報を提供します。インタプリタのオプション・irb・ドキュメントの作成・Ruby のプログラムをgem としてパッケージ化し配布する方法などについて説明します。また、Web プログラミングやWindows 環境でのRuby の使い方(Windows ネイティブAPI の呼び出し・COM の統合・Windows オートメーション)など、Ruby が広く利用されているいくつかの分野についてのチュートリアルも含まれています。さらには、Ruby を使用してインターネットにアクセスする方法についても説明します。
「第III 部Ruby の文法と動作の仕組み」は、少し高度な内容になっています。詳細な文法解説から始まって、duck typing の概念・オブジェクトモデル・オブジェクトの汚染・リフレクション・マーシャリングといった内容にも触れます。この部分は最初は斜め読みでも構いませんが、Ruby を本格的に使い始めると読み返すことになると思います。『プログラミングRuby 1.9 ライブラリ編』はライブラリリファレンスです。かなりのボリュームがあります。『プログラミングRuby 1.9』では54 を超える組み込みクラス/モジュールの1,250 を超えるメソッドについて解説しています(第2 版ではクラス/モジュール数40、メソッド数800)。それに加えて、標準のRuby ディストリビューションに含まれているライブラリについても説明しています。
読者の皆さんは、ご自分のプログラミング経験、とりわけオブジェクト指向言語での経験に合わせて、まずは必要な箇所だけを読んでみるとよいでしょう。レベル別のお勧めの読み方をまとめておきます。
初心者: 『プログラミングRuby 1.9 言編』第I 部のチュートリアルから読み始めてください。プログラムを書くときは、ライブラリリファレンスを手元に置いて参照するようにします。Array、Hash、String などの基本的なクラスの使い方に慣れてください。少し慣れて楽に使えるようになってきたら、第III 部の少し高度な話題に進むとよいでしょう。
Perl などの経験者: Perl、Python、Java、Smalltalk といった言語に習熟されている方は、まず、Rubyのインストールおよび実行方法について説明した『プログラミングRuby 1.9 言語編』第1 章(p. 3)を、続いて入門者向けの第2 章(p. 13)を読んでください。その後は、引き続きチュートリアル部の第3 章以降をじっくり読むのも良いでしょうし、いきなり第III 部からの高度な説明に飛んでも構いません。その後、『プログラミングRuby 1.9 ライブラリ編』に目を通してください。
上級者: 「うざったいチュートリアルなどいらない」という専門家や指導者の方は、いきなり『プログラミングRuby 1.9 言語編』の第22 章(p. 289)から読み始め、『プログラミングRuby 1.9 ライブラリ編』を斜め読みしたら、本書をコースター代わりにでも使ってください(結構おしゃれかもしれません)。
もちろん、最初から最後まで順番に読んでいっても一向に構いません。
それから、解決できない問題にぶつかったら、いつでも助けてくれる人がいることをお忘れなく。詳しくは付録C(p. 429)を参照してください。
(前付より)
著者からのコメント
私は、本書の初版と第2 版でも「まえがき」を書きました。初版ではRuby を始めた「動機」について書き、第2 版ではRuby にまつわる「奇跡」について書きました。
この版の「まえがき」では、「勇気」について書きましょう。私はいつでも、勇気ある人々を賞賛します。Ruby 周辺の人々は皆、勇敢だと思います。本書の著者たちもそうです。彼らには、当時まだあまり知られていなかったRuby という言語に飛び込む勇気がありました。新しいテクノロジーを試してみる勇気がありました。古いテクノロジーに執着し、そのまま使い続けることだってできたはずですが、彼らはそうしませんでした。新たに手に入れた材料を使って、独自の世界を構築しました。彼らは、冒険者であり、探検家であり、開拓者です。彼らの努力によってはじめて、我々はRuby という実りある成果を手にすることができたのです。
今、強く感じるのは、私がこれまでに成し遂げたことは、そうした勇敢な人たちの助けを借りてRuby というひとつの宇宙を創造したようなものだということです。この「宇宙」は、最初はエドモンド・ハミルトンによる古典SF『フェッセンデンの宇宙』に登場するミニ宇宙のようなとるに足らないものでした。しかし、今では本物の宇宙のような広大な世界になりました。数え切れないくらいの勇敢な人々がRuby を使うようになりました。彼らは、日々新しいことに挑戦し、Ruby の世界を、より良い、より大きなものにしようと努力を重ねています。私は、そうしたRuby 界の一員であることを本当にうれしく思います。
Ruby の宇宙をすべて記述しようとするならば、「世界もその書かれた文書を収めきれないであろう」(ヨハネ21:25)と思います。本書はそのようなRuby の宇宙を書き表した最初の本です。このたび、最新の情報が盛り込まれて、改版されました。どうぞ、お楽しみください。
まつもとゆきひろ, a.k.a. "Matz"
2009 年2 月、日本にて
著者について
著者代表
Dave Thomas(デイブトーマス)
1999 年以来、プログラミング言語Ruby を愛し続けている。Programming Ruby の初版(Ruby 1.6を解説)は、日本国外のソフトウェア開発者をRuby に注目させるきっかけとなった。カンファレンスやユーザグループやトレーニングの場でRuby の福音を説くことを喜びとする。ドキュメンテーションツールrdoc およびri の原作者。Ruby リポジトリのコミッタとして、Ruby のソースコードのドキュメントの大半を貢献。Andy Hunt とともに、The Pragmatic Bookshelf の代表を務める。本書のほかに7 冊の著作がある。
監訳者
まつもとゆきひろ
株式会社ネットワーク応用通信研究所フェロー。Ruby の生みの親。三女一男の父であり、良き夫でもある。性格はふまじめだが、敬虔(?)なキリスト教徒である。温泉好き。鳥取県出身、島根県在住。牡牛座。O 型。
訳者
田和勝(たわまさる)
フリーランス翻訳者。IT 関連書籍、ドキュメントの翻訳を専門に行っている。主な訳書として、『Perlクックブック』、『詳説正規表現第2 版』(いずれもオライリージャパン刊)などがある。兵庫県神戸市出身。
著者略歴 (「BOOK著者紹介情報」より)
ドキュメンテーションツールrdocおよびriの原作者。Rubyリポジトリのコミッタとして、Rubyのソースコードのドキュメントの大半を貢献。Andy Huntとともに、The Progmatic Bookshelfの代表を務める。8冊の著作がある
まつもと ゆきひろ
株式会社ネットワーク応用通信研究所フェロー。Rubyの生みの親。鳥取県出身、島根県在住
田和 勝
フリーランス翻訳者。IT関連書籍、ドキュメントの翻訳を専門に行っている。兵庫県神戸市出身(本データはこの書籍が刊行された当時に掲載されていたものです)