かすたあどくりいむ定食

育児、プラモ、音楽(バンド)が趣味なエンジニア(かもしれない)ブログです。

Ruby入門読み始めた3(最終回)

「プロを目指す人のためのRuby入門」もついに全部読み終えましたので、最後のまとめ。

hellhellmymy.hatenablog.com

hellhellmymy.hatenablog.com

今回は7~12章までです。

第7章 クラスの作成を理解する

こちら各章の中でも一番ボリュームがあったのではないか。と思うくらいボリュームいっぱいでお腹いっぱいでした。

オブジェクト指向プログラミングの基礎知識

・クラスの定義

・selfキーワード

・クラスの継承

・メソッドの公開レベル

・定数

・様々な種類の変数

・クラス定義やRubyの言語仕様に関する高度な話題

オブジェクト指向プログラミング関連の用語の説明「クラス、オブジェクト、インスタンス〜」等から始まり、クラス内でのインスタンスメソッド、アクセサメソッド、クラスメソッドの定義やselfつけるつけないの説明がありました。既存の実装に上書きするモンキーパッチという用語も出てきました。 クラスの継承、メソッドの扱い方等がわかりました。

第8章 モジュールを理解する

こちらもまぁまぁボリュームがありました。

・モジュールの概要

・モジュールのミックスイン(includeとextend)

・モジュールを利用した名前空間の作成

・関数や定数を提供するモジュールの作成

・状態を保持するモジュールの作成

・モジュールに関する高度な話題

モジュールのミックスイン(include,extend)のやり方、Hoge::Hogehogeでモジュール名::クラス名で参照するやり方がありました。名前空間つきのクラス定義も可能でネストの必要もなくDRYなコーディングができることが分かりました。そもそもモジュールってなんぞやってところだったので勉強になりました。

第9章 例外処理を理解する

・例外の補足

・意図的に例外を発生させる方法

・例外処理のベストプラクティス

ここはわざと例外を発生させてみたり、例外を補足する事でエラー文を出したり、あらかじめ予想してその例外に対しての処理を実装してみたり等の勉強でした。例外発生してもそのままプログラムを実行させる処理もありました。

第10章 yieldとProcを理解する

・ブロックを利用するメソッドの定義とyield

・Procオブジェクト

Procクラスがブロックをオブジェクト化するためのクラス。このProcとブロックの関わりについてが多かったです。ブロック処理の受け渡し等についても学習しました。

第11章 Rubyのデバック技法を身につける

・バックトレースの読み方

・よく発生する例外クラスとその原因

・プログラムの途中経過を確認する方法

・凡用的なトラブルシューティング方法

こちらでの内容は実際Railsチュートリアルや他のアプリ作成をしていた時に、対処していたのでそこまで新しい発見は少なっかたです。 あと著者の伊藤淳一さんのQitta記事 blog.jnito.com

こちらの記事も読みました。初心者にはためになります。 しかし、エラー文そのままググって対処するやり方があまりよろしくないとの事だったので、ちゃんとブログ記事の内容が正しいかどうか判断できるレベルまで成長したいですね。

第12章 Rubyに関するその他のトピック

・日付や時刻の扱い

・ファイルやディレクトリの扱い

・特定の形式のファイルを読み書きする

環境変数や起動時引数の取得

・eval,バッククオートリテラル,sendメソッド

・Rake

・gemとBundler

ここではその他の事でした。 でも、自分で独学でこんな内容は勉強しねえだろと思うような事だったので、チェリー本のおかげで知ることができました。ありがたかったです。

全部読んだ!!!!

時間にして〜計算してなかった、、、 通勤時間と昼休みと帰宅後と朝の時間に読み進めてました。育児の隙間時間にやったりとハードモードな環境でしたが俺はやったぞ!!! あまりにも分からない部分は実際コードを打ちましたが基本読みながら進めました。 3週間程でした。

この内容を完全に理解した訳ではないけど、苦手意識が強かった業務で使う長いコードとかも読んでみようと思えるようになったり、一冊読み終えた達成感があり小さな自信がつきました。そんで、楽しかった。あと、自分も元バンドマンなので伊藤さんの作る例題とかのネーミングがモロ音楽ネタで良かったです!!

これを読んだ後だからこそ、もう1回Rails Tutorialにトライしてみようと思います。

そしてチェリー本ももう1回時間を開けて読み直そうと思います。