目次
第1章 Ruby技術者認定試験概要
- 1-1 Ruby市場について
- 1-1-1 アジャイル開発とRuby
 
 - 1-2 Rubyの標準化
 - 1-3 Ruby技術者認定試験制度について
- 1-3-1 認定試験の概要と目的
 - 1-3-2 資格(試験)名称と資格区分
 - 1-3-3 試験実施要項
 - 1-3-4 試験の申し込み方法
 
 
第2章 実行環境
- 2-1 Rubyのセットアップ
- 2-1-1 Mac OSの場合~rbenv
 - 2-1-2 Windowsの場合~RubyInstaller for Windows
 
 - 2-2 はじめてのRuby~Rubyチュートリアル
- 2-2-1 irb
 - 2-2-2 変数と定数
 - 2-2-3 関数とクラス
 
 - 2-3 コマンドラインオプションと環境変数
- 2-3-1 組み込み定数とコマンドラインオプション
 - 2-3-2 requireとload
 
 - 2-4 APIリファレンス
- 2-4-1 コメントとRDoc
 
 - 第2章のまとめ
 
第3章 文法
- 3-1 識別子
- 3-1-1 命名規則
 - 3-1-2 変数と定数のスコープ
 
 - 3-2 数値
- 3-2-1 数値リテラル
 - 3-2-2 数値演算
 - 3-2-3 数値クラスと演算子の再定義
 - 3-2-4 メソッド
 
 - 3-3 論理値
- 3-3-1 条件分岐
 - 3-3-2 擬似変数
 - 3-3-3 論理演算子
 
 - 3-4 文字列
- 3-4-1 文字列リテラルと式展開
 - 3-4-2 バックスラッシュ記法
 - 3-4-3 ヒアドキュメント
 - 3-4-4 パーセント記法
 - 3-4-5 文字列演算
 - 3-4-6 sprintfによるフォーマット指定
 
 - 3-5 シンボル
- 3-5-1 シンボルリテラル
 - 3-5-2 オブジェクトの同値性と同一性
 - 3-5-3 変数と値
 
 - 3-6 配列
- 3-6-1 配列リテラル
 - 3-6-2 添字演算子
 - 3-6-3 多重代入と可変長引数
 - 3-6-4 配列の演算
 - 3-6-5 for式
 
 - 3-7 ハッシュ
- 3-7-1 ハッシュリテラル
 - 3-7-2 ハッシュ引数
 
 - 3-8 範囲
- 3-8-1 範囲リテラル
 - 3-8-2 case式
 - 3-8-3 while式とuntil式
 
 - 3-9 正規表現とコマンド出力
- 3-9-1 正規表現オブジェクト
 - 3-9-2 正規表現記号とオプション
 - 3-9-3 パターンマッチ
 - 3-9-4 コマンド出力
 
 - 3-10 ブロックとProc
- 3-10-1 ブロックの基本
 - 3-10-2 ブロックのフォーマットと判定
 - 3-10-3 Proc
 - 3-10-4 lambda
 - 3-10-5 ブロックを受けるメソッド
 - 3-10-6 スレッド
 - 3-10-7 ファイバ
 
 - 3-11 脱出構文と例外処理,大域脱出
- 3-11-1 脱出構文
 - 3-11-2 例外処理
 - 3-11-3 例外クラスを指定した捕捉
 - 3-11-4 catch/throwによる大域脱出
 
 - 第3章のまとめ
 
第4章 オブジェクト指向
- 4-1 クラス定義
- 4-1-1 class式
 - 4-1-2 インスタンスメソッドと初期化メソッド
 - 4-1-3 クラス継承
 - 4-1-4 super
 
 - 4-2 インスタンスメソッド
- 4-2-1 クラスオブジェクト
 - 4-2-2 継承したクラスオブジェクト
 - 4-2-3 メソッドの探索経路
 - 4-2-4 継承チェーンとmethod_missing
 - 4-2-5 オープンクラス
 
 - 4-3 Mix-in
- 4-3-1 モジュールの定義とインクルード
 - 4-3-2 モジュールのメソッドの探索経路
 
 - 4-4 特異クラス
- 4-4-1 特異クラスの性質
 - 4-4-2 特異クラスの参照と定義
 - 4-4-3 extendメソッド
 - 4-4-4 prependメソッド
 - 4-4-5 Refinements
 
 - 4-5 クラスメソッド
- 4-5-1 Classクラス
 - 4-5-2 クラスメソッドの定義
 
 - 4-6 メソッドの可視性と組み込み関数
- 4-6-1 メソッドの可視性
 - 4-6-2 Kernelモジュールと関数
 
 - 4-7 変数と定数
- 4-7-1 ローカル変数とグローバル変数
 - 4-7-2 インスタンス変数
 - 4-7-3 クラス変数
 - 4-7-4 ネストしたスコープの定義
 - 4-7-5 ネストしたスコープの参照
 
 - 第4章のまとめ
 
第5章 組み込みライブラリ
- 5-1 BasicObjectクラス
 - 5-2 Kernelモジュール
 - 5-3 Objectクラス
- 5-3-1 オブジェクトのID
 - 5-3-2 オブジェクトのクラス
 - 5-3-3 オブジェクトの比較
 - 5-3-4 オブジェクトのメソッド一覧
 - 5-3-5 オブジェクトの複製
 - 5-3-6 オブジェクトの凍結
 - 5-3-7 インスタンス変数にアクセスする
 - 5-3-8 未定義メソッドの呼び出し
 - 5-3-9 オブジェクトの文字列表現
 - 5-3-10 特別なオブジェクト
 
 - 5-4 数値型クラス - Numeric,Float,Integer,Rational,Complex
- 5-4-1 Numericクラス
 - 5-4-2 Floatクラス
 - 5-4-3 Integerクラス
 - 5-4-4 Rationalクラス
 - 5-4-5 Complexクラス
 
 - 5-5 Encodingクラス
 - 5-6 Stringクラス
- 5-6-1 文字列の文字コード情報
 - 5-6-2 文字列の比較
 - 5-6-3 文字列の切り出し
 - 5-6-4 文字列の変更
 - 5-6-5 文字列の置換
 - 5-6-6 文字列の連結
 - 5-6-7 文字列の大文字,小文字への変換
 - 5-6-8 文字列の末尾や先頭にある空白や改行を削除する
 - 5-6-9 文字列を逆順にする
 - 5-6-10 文字列の長さ
 - 5-6-11 文字列の割り付け
 - 5-6-12 非表示文字列を変換する
 - 5-6-13 文字列をアンパックする
 - 5-6-14 文字列内での検索
 - 5-6-15 次の文字列を求める
 - 5-6-16 文字列に対する繰り返し
 - 5-6-17 他のクラスへの変換
 
 - 5-7 Arrayクラス
- 5-7-1 配列の生成
 - 5-7-2 配列に要素を追加する
 - 5-7-3 配列の要素を変更する
 - 5-7-4 配列の要素を参照する
 - 5-7-5 配列の要素を調べる
 - 5-7-6 配列の要素を削除する
 - 5-7-7 配列の比較
 - 5-7-8 配列の要素での繰り返し
 - 5-7-9 配列の要素を連結する
 - 5-7-10 配列の長さを求める
 - 5-7-11 配列をソートする
 - 5-7-12 配列を変換する
 - 5-7-13 配列を組み合わせて生成する
 - 5-7-14 配列をパックする
 - 5-7-15 配列の演算
 
 - 5-8 Hashクラス
- 5-8-1 ハッシュの生成
 - 5-8-2 ハッシュのキーや値を取得する
 - 5-8-3 ハッシュを変更する
 - 5-8-4 ハッシュを調べる
 - 5-8-5 ハッシュを使った繰り返し
 - 5-8-6 ハッシュをソートする
 - 5-8-7 ハッシュを変換する
 
 - 5-9 Symbolクラス
- 5-9-1 定義済みのSymbolオブジェクトを取得する
 - 5-9-2 Symbolオブジェクトに対応する文字列を取得する
 
 - 5-10 Dirクラス,Fileクラス,IOクラス
- 5-10-1 Dirクラス
 - 5-10-2 Fileクラス
 - 5-10-3 IOクラス
 
 - 5-11 Timeクラス
- 5-11-1 Timeオブジェクトの生成
 - 5-11-2 Timeオブジェクトの属性を取得する
 - 5-11-3 タイムゾーンを変更する
 - 5-11-4 Timeオブジェクトの演算
 - 5-11-5 Timeオブジェクトの変換
 
 - 5-12 Regexpクラス
- 5-12-1 正規表現オブジェクトを生成する
 - 5-12-2 正規表現オブジェクトでマッチングする
 - 5-12-3 正規表現の特殊文字をエスケープする
 - 5-12-4 マッチした結果を取得する
 - 5-12-5 正規表現の論理和を求める
 - 5-12-6 正規表現オブジェクトのオプションや属性を取得する
 
 - 5-13 Exceptionクラス
 - 5-14 Procクラス
- 5-14-1 ブロック付きメソッドの引数として利用する
 - 5-14-2 手続きオブジェクトの中での処理の中断
 - 5-14-3 Proc.new以外の手続きオブジェクト生成
 
 - 5-15 Moduleクラス
- 5-15-1 定義されている定数に関するメソッド
 - 5-15-2 メソッドの設定
 - 5-15-3 評価する
 - 5-15-4 クラス変数を扱う
 - 5-15-5 モジュールの機能を取り込む
 - 5-15-6 モジュール関数にする
 - 5-15-7 祖先クラスを取得する
 
 - 5-16 Enumerableモジュール
 - 5-17 Comparableモジュール
 - 5-18 Marshalモジュール
 - 5-19 Threadクラス
- 5-19-1 スレッドの生成
 - 5-19-2 スレッドの状態
 - 5-19-3 スレッドの実行,一時停止,終了
 - 5-19-4 スレッド終了時のensure節
 - 5-19-5 スレッド中の例外
 - 5-19-6 スレッドのデッドロック
 - 5-19-7 スレッドのリスト
 - 5-19-8 スレッドの切り替え
 - 5-19-9 スレッドの終了を待つ
 - 5-19-10 スレッドの優先度
 - 5-19-11 スレッド固有のデータ
 
 - 5-20 Mutexクラス
- 5-20-1 ミューテックスによる排他制御
 
 - 5-21 Fiberクラス
 - 第5章のまとめ
 
第6章 添付ライブラリ
- 6-1 添付ライブラリ
 - 6-2 テキスト
- 6-2-1 StringIO
 
 - 6-3 ファイルフォーマット
- 6-3-1 yaml
 - 6-3-2 json
 - 6-3-3 csv
 
 - 6-4 ファイル
- 6-4-1 fileutils
 
 - 6-5 ネットワーク
- 6-5-1 socket
 - 6-5-2 uri
 - 6-5-3 net/http
 
 - 6-6 日付・時間
- 6-6-1 date
 
 - 6-7 デザインパターン
- 6-7-1 forwardable
 - 6-7-2 delegate
 - 6-7-3 observer
 - 6-7-4 singleton
 
 - 6-8 開発ツール
- 6-8-1 test/unit
 - 6-8-2 RDoc
 
 - 6-9 コマンドライン
- 6-9-1 optparse
 
 - 第6章のまとめ
 
第7章 Ruby技術者認定試験Silver演習問題
- 問題篇 基礎力確認問題
 - 問題篇 模擬試験
 - 解答篇 基礎力確認問題
 - 解答篇 模擬試験
 
第8章 Ruby技術者認定試験Gold演習問題
- 問題篇 基礎力確認問題
 - 問題篇 模擬試験
 - 解答篇 基礎力確認問題
 - 解答篇 模擬試験