初めてのRuby

[cover photo]
TOPICS
Programming , Ruby
発行年月日
PRINT LENGTH
224
ISBN
978-4-87311-367-8
FORMAT
Print PDF
Ebook
2,420円
Ebookを購入する
Print
2,420円

本書は、他言語でのプログラミング経験を持つ人を対象に、Rubyの特徴、Rubyならではの方法や慣習について解説します。これはRubyの資料を読んで実践的な学習を進めていくために必要な前提知識です。本書はRubyの基礎的な部分とメタクラスやブロック構文のような独自の概念、それらにまつわる文化を説明し、Ruby特有の考え方を知ってもらうことを目的としています。本書を最後まで読めば、「Rubyリファレンスマニュアル」を自在に読みこなし多様なRubyライブラリを活用して、自力で高度なRubyプログラミングを習得するだけの基礎知識が手に入るでしょう。Ruby1.8及び1.9に対応しています。
本書は、O'Reilly Media発行『Learning Ruby』の翻訳書ではなく、日本語による書き下ろしの書籍です。

目次

序文
はじめに

1章 ようこそ、Rubyのある生活へ
	1.1 Rubyの特徴
		1.1.1 オブジェクト指向言語
		1.1.2 より良いPerl
		1.1.3 動く擬似コード
		1.1.4 ALGOLの皮をかぶったLisp
	1.2 処理系と実行環境
		1.2.1 バージョン体系
		1.2.2 構成
	1.3 実行モデル
		1.3.1 動的性
		1.3.2 実行時ロード
		1.3.3 ガベージ・コレクション
	1.4 インタプリタの実行
		1.4.1 Hello, World!
		1.4.2 対話的実行環境
		1.4.3 コマンドライン・デバッガ
	1.5 文法と機能
		1.5.1 式と区切り
		1.5.2 ホワイトスペース
		1.5.3 入出力
		1.5.4 制御式
		1.5.5 ブロック付きメソッド
		1.5.6 オブジェクト指向
	1.6 本章のまとめ
		1.6.1 本章で扱っていないこと

2章 配列とハッシュ
	2.1 配列
		2.1.1 配列の構築
		2.1.2 添字参照
		2.1.3 添字代入
		2.1.4 配列の比較
		2.1.5 様々なメソッド
		2.1.6 ブロック付きメソッドとイテレータ
	2.2 ハッシュ
		2.2.1 ハッシュの構築
		2.2.2 添字演算式
		2.2.3 ハッシュの比較
		2.2.4 様々なメソッド
	2.3 Enumerableモジュール
		2.3.1 Enumerator
	2.4 本章のまとめ
		2.4.1 本章で扱っていないこと

3章 数値
	3.1 数値リテラル
		3.1.1 整数リテラル
		3.1.2 浮動小数点リテラル
	3.2 数値演算
		3.2.1 除算
		3.2.2 符号操作
		3.2.3 優先順位
		3.2.4 その他の数値演算
		3.2.5 型と自動変換
	3.3 比較
		3.3.1 宇宙船演算子
	3.4 数学関数
	3.5 ビット演算
		3.5.1 符号とビット
	3.6 本章のまとめ
		3.6.1 本章で扱っていないこと

4章 文字列
	4.1 文字列の構築
		4.1.1 文字列リテラル
		4.1.2 バックスラッシュ記法
		4.1.3 式展開
		4.1.4 バッククォート文字列
		4.1.5 パーセント記法
		4.1.6 ヒアドキュメント
	4.2 文字と文字リテラル
		4.2.1 文字リテラル
		4.2.2 文字のクラス
	4.3 正規表現
		4.3.1 正規表現リテラル
		4.3.2 鬼車
	4.4 部分文字列へのアクセス
		4.4.1 更新
	4.5 文字列操作
		4.5.1 反復
		4.5.2 分解
		4.5.3 比較
		4.5.4 その他
	4.6 イテレータ
	4.7 フォーマット
	4.8 シンボル
		4.8.1 シンボルの性質と用途
	4.9 Ruby 1.8とマルチバイト文字列
		4.9.1 文字列=バイト列
		4.9.2 $KCODE対応メソッド
		4.9.3 正規表現
		4.9.4 文字列の同値性
		4.9.5 多言語対応
	4.10 Ruby 1.9とマルチバイト文字列
		4.10.1  Encoding
		4.10.2  マジックコメント
		4.10.4  文字列の結合
		4.10.5  文字列の同値性
	4.11 本章のまとめ
		4.11.1  本章で扱っていないこと

5章 入出力
	5.1 プログラムへの引数
	5.2 ファイル
		5.2.1 ファイルのモード
		5.2.2 イテレータ
		5.2.3 ランダムアクセス
		5.2.4 手動によるリソース管理
	5.3 標準入出力
	5.4 その他の入出力オブジェクト
		5.4.1 ARGF
	5.5 エンコーディング
		5.5.1 外部エンコーディング
		5.5.2 内部エンコーディング
	5.6 本章のまとめ
		5.6.1 本章で扱っていないこと

6章 変数と式
	6.1 変数
		6.1.1 参照
		6.1.2 変数の種類
		6.1.3 ローカル変数
		6.1.4 インスタンス変数
		6.1.5 クラス変数
		6.1.6 グローバル変数
		6.1.7 定数
		6.1.8 擬似変数
		6.1.9 識別子と変数名
	6.2 演算子
		6.2.1 再定義可能な演算子
		6.2.2 再定義不能な演算子
		6.2.3 論理演算子
		6.2.4 範囲演算子
		6.2.5 条件演算子
	6.3 制御式
		6.3.1 if式
		6.3.2 case式
		6.3.3 case式 その2
		6.3.4 while式
		6.3.5 for式
		6.3.6 イテレータ
		6.3.7 脱出
	6.4 例外処理
		6.4.1 rescue修飾子
		6.4.2 raise
	6.5 大域脱出
	6.6 本章のまとめ
		6.6.1 本章で扱っていないこと

7章 メソッド
	7.1 メソッド呼び出し
		7.1.1 括弧の省略
		7.1.2 メソッド連鎖
		7.1.3 レシーバの省略
		7.1.4 引数展開
	7.2 メソッドの定義
		7.2.1 def式
		7.2.2 return
		7.2.3 デフォルト値
		7.2.4 可変長引数
	7.3 ブロック付きメソッド
		7.3.1 クロージャーとしてのブロック
		7.3.2 ブロック引数とブロックローカル変数
		7.3.3 ブロック付きメソッドの定義
		7.3.4 Proc
	7.4 本章のまとめ
		7.4.1 本章で扱っていないこと

8章 オブジェクトとクラス
	8.1 クラス定義
		8.1.1 継承
		8.1.2 インスタンスメソッドの定義
		8.1.3 クラスメソッドの定義
		8.1.4 インスタンス化
		8.1.5 属性
		8.1.6 クラス定義の追加
		8.1.7 スーパークラスの呼び出し
	8.2 変数と定数
		8.2.1 インスタンス変数
		8.2.2 クラス変数
		8.2.3 定数
	8.3 アクセス権限
	8.4 特異メソッドと特異クラス
		8.4.1 特異メソッド
		8.4.2 特異クラス
		8.4.3 クラスメソッドとメタクラス
	8.5 モジュール
		8.5.1 Mix-in
		8.5.2 名前空間
	8.6 メソッドの探索
		8.6.1 オーバーロードの不能性
	8.7 本章のまとめ
		8.7.1 本章で扱っていないこと

9章 本書を越えて
	9.1 RubyGems
		9.1.1 主なコマンド
		9.1.2 おすすめGems
	9.2 ネットワーク
	9.3 データベース
	9.4 画像
	9.5 GUI
	9.6 Rubyの黒魔術
		9.6.1 eval族
		9.6.2 method_missing
		9.6.3 set_trace_func
		9.6.4 継続
	9.7 Rubyの情報源
		9.7.1 リファレンス
		9.7.2 リポジトリ
		9.7.3 書籍
	9.8 コミュニティ
		9.8.1 グループ
		9.8.2 メーリングリスト
		9.8.3 IRC
		9.8.4 ニュースグループ
		9.8.5 イベント
		9.8.6 その他

付録A 処理系のインストール
	A.1 バージョンの選択
	A.2 Microsoft Windows
		A.2.1 Ruby-1.9.0-1 Windows Installer Package
	A.3 Mac OS X
		A.3.1 MacPorts
		A.3.2 Fink
		A.3.3 それ以外
	A.4 GNU/Linux
	A.5 ソースコードからのインストール
		A.5.1 ダウンロード
		A.5.2 インストール
	A.6 RubyGems
	A.7 その他

付録B 諸表
	B.1 Ruby 1.8から1.9への変更点
		B.1.1 文法の変更点
		B.1.2 Kernelの変更点
		B.1.3 クラスとオブジェクトとの変更点
		B.1.4 数値の変更点
		B.1.5 配列の変更点
		B.1.6 ハッシュの変更点
		B.1.7 範囲の変更点
		B.1.8 Enumerableの変更点
		B.1.9 文字列とシンボルの変更点
		B.1.10  正規表現の変更点
		B.1.11  入出力の変更点
		B.1.12  FileとDirの変更点
		B.1.13  Timeの変更点
		B.1.14  呼び出し可能オブジェクトの変更点
		B.1.15  例外と例外クラスの変更点
		B.1.16  スレッドの変更点
		B.1.17  セキュリティの変更点
		B.1.18  その他のライブラリの変更点
	B.2 用語集

索引