本書は、初めてプログラミングを体験するという方に向けた入門書です。Rubyというプログラミング言語を使い、ごくごく初歩的なことからゆっくりプログラミングを学んでいきます。
第2巻ではRubyのライブラリを使って、プログラムで扱うさまざまなデータとその処理の手順(アルゴリズム)の基礎知識を身につけます。ひとりでプログラムを作成するときに欠かせない、Rubyのリファレンスマニュアルの引き方も覚えます。
また、データのソート(並べ替え)とサーチ(検索)を題材に、プログラミングで大切な処理効率の基本的な考え方も学びます。
学習したことは、小問題や章末の練習問題で確認できます。作成したRubyプログラムを実行する環境も、付属CD-ROMを使って簡単に用意できます。
本書の学習では、プログラミングの“作る楽しさ”を感じながら、プログラミングの力を伸ばすことができるでしょう。
●付属CD-ROMのご案内
本書の付属CD-ROMには、実習に使用するRubyプログラムの実行環境を構築するためのインストーラパッケージや、本文で作成したサンプルプログラムなどが収録されています。
・-RubyInstallerについて
Ruby-1.9インストーラパッケージ「Ruby-1.9.1.msi」が収録されています。対応OSは、Windows XP以降(Vistaを含む)です。
・-サンプルプログラムについて
本書で作成するサンプルプログラムを章ごとに収録しています。小問題や練習問題で作成するプログラムは収録していません。
第1章 データファイルの操作とリファレンスの引き方
1-1 クラスが持つメソッドの調べ方
組み込みクラスと添付ライブラリ
Rubyリファレンスマニュアル
リファレンスで使われている表記
メソッド名が分からない場合の検索方法
一覧表示に出ないメソッドの引き方
メソッドの別名を推測する
1-2 データファイルの活用
「いつどこで誰が誰と何をした」ゲーム
さまざまなデータ形式
メソッドチェイン
2次元配列
1-3 画像ファイルの操作
ビットマップファイルの形式
パスカルの三角形とギャスケットの関係
ブロックを使った配列の初期化
バイナリデータの書き出し
ブロックで配列を初期化した理由
まとめ
練習問題
第2章 日付/時刻とライブラリの利用
2-1 日付と時刻
Timeクラスの利用
日付/時刻を自由な書式で表示する
ファイルの日付/時刻情報を取り出し
dateライブラリの利用
2-2 ライブラリの動作と作成
特殊変数
Array#eachメソッド
ライブラリのロード
ライブラリの作成
まとめ
練習問題
第3章 ネットワークライブラリと例外処理
3-1 高水準ライブラリの利用
高水準なライブラリとは
RSSを見てみよう
RSSの操作
3-2 例外
エラーの原因は多岐にわたる
例外とbegin式
ensure節の働きとbegin式の動作
例外の使いこなし
プログラムから例外を送る
まとめ
練習問題
第4章 永続化と圧縮
4-1 永続化
オブジェクトの永続化
オブジェクトの復元と永続化の制限
複雑なオブジェクトの永続化
復元したオブジェクトの表示方法
4-2 圧縮
圧縮とは
zlibライブラリによる圧縮
まとめ
練習問題
第5章 ハッシュと暗号
5-1 ハッシュの原理と応用
ハッシュとファイル転送
ハッシュ値を求めるプログラム
Hashクラスの仕組み
シンボル(Symbolクラス)
5-2 暗号
暗号のポイント
シーザー暗号
現代の暗号
まとめ
練習問題
第6章 状態遷移と正規表現
6-1 状態遷移
占いプログラム
問題の抽象化
状態遷移図と状態遷移表
状態遷移を使用したプログラミング
6-2 正規表現
正規表現とは
正規表現リテラル
基本的な正規表現
複雑な正規表現
まとめ
練習問題
第7章 アルゴリズムと計算量
7-1 アルゴリズムとは
アルゴリズムを考える理由
最適なアルゴリズムを選ぶ基準
7-2 選択ソートとバブルソート
ソートとは
バブルソート
計算量を考える
プログラムの実行時間の測定方法
7-3 クイックソート
クイックソートの手順
擬似コード
クイックソートのプログラム
クイックソートの計算量
7-4 サーチ
順次探索
2分探索
2分探索のプログラム
2分探索によるデータ挿入位置の発見
2分探索でデータ挿入位置を求めるプログラム
2分探索の計算量
まとめ
練習問題
小問題ならびに練習問題の解答
内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。
正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。
本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。
刷数は奥付(書籍の最終ページ)に記載されています。
書籍の種類:
書籍の刷数:
本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。
対象の書籍は正誤表がありません。
発生刷 | ページ数 | 書籍改訂刷 | 電子書籍訂正 | 内容 | 登録日 | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1刷 | 075 上から4行目 |
未 | 未 |
|
2012.05.29 | ||||||
1刷 | 077 リスト2-8の3行目 |
未 | 未 |
|
2012.05.29 | ||||||
1刷 | 167 リスト5-4の1行目 |
未 | 未 |
|
2012.05.29 | ||||||
1刷 | 269 (4)番「check_library.rb」の6行目 |
未 | 未 |
|
2009.11.16 | ||||||
1刷 | 270 (5) birthday_3.rbとその別解の2行目 |
未 | 未 |
|
2012.05.29 |
baboocon さん
2015-05-09
2巻はRubyの入門書というよりもプログラミングの脱入門書のような印象。Ruby文法を一つ一つ紹介するのではなく、実際に色々な問題を解きながらおぼえていく形式。ハッシュと暗号や例外処理、ソートアルゴリズムの計算量の話は意外と参考になった。