地方でリモートワーク

プログラミング、先物、fx,仮想通貨なんでもやります

Ruby Goldで92点をとって合格する勉強法まとめ

スポンサーリンク

f:id:ihatov08:20170312214906p:plain

もう数カ月前ですが、Ruby Goldに合格したので勉強方法をまとめます。 対策さえすれば合格できる試験だと思います。 Ruby silverはメソッドなど覚えることが多いですが、Ruby Goldはメタプログラミングの仕組みを 覚えればいいので、覚える量としてはsilverより少ないと思います。

まずは公式問題集

公式の問題集は完璧になるまでやりました。 また、解説の部分も読み込んだ方がよいと思います。

[改訂2版]Ruby技術者認定試験合格教本(Silver/Gold対応) Ruby公式資格教科書

[改訂2版]Ruby技術者認定試験合格教本(Silver/Gold対応) Ruby公式資格教科書

  • 作者: 牧俊男,小川伸一郎,前田修吾,CTCテクノロジー株式会社
  • 出版社/メーカー: 技術評論社
  • 発売日: 2017/08/25
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る

メタプログラミング

Ruby goldでかなり出題されるメタプログラミングについて、丁寧に解説されている本です。 上司が部下にOJTで、メタプログラミングを教えていく流れで解説が進んでいて、読みやすいです。 出題範囲の5章まで4周くらい読みました。 Railsの仕組みも解説があるので、railsを触っている方は読むと面白いかもしれません。

メタプログラミングRuby 第2版

メタプログラミングRuby 第2版

先人のブログ

先人たちの経験をブログを通して学びました。 同じような問題が出題されるので、目を通しておいたほうが良いと思います。 自分がブックマークに登録しておいた全てを掲載しておきます。

身体で覚える

本を読むだけでは覚えられないので、実際にコードを叩いて覚えました。 テキストエディタのEmacsを使って、rcodetoolsでコード実行結果を出力させながら覚えました。 実際に叩いたコードのリポジトリです。 自分用の解説も書いているので、よかったら見てみて下さい。

github.com

感想

メタプログラミングの仕組み、変数や定数のスコープを理解すれば、合格圏内だと思います。 業務プログラミング1年半程度で受験したのですが、かなりRubyの見通しが良くなりました。 Rubyの仕組みを覚えたい方はけっこう体系的にRubyを学べる試験だと思います。

余談

ブログ一覧リンクはonetabでURL一覧を吐き出しました。 吐き出される形式がmarkdownではないんです。。。 こんなかんじ

http://jibun.atmarkit.co.jp/scenter/ittrain/121_cal.html | ITトレメ Ruby技術者認定【Gold】試験 過去問題一覧 - @IT自分戦略研究所

これだとmarkdownでリンクとして表示されないです。 手打ちで1つずつ修正するのも嫌なので、Rubyのワンライナーでmarkdownのリンク形式に変換しました。

require 'csv'
File.open('convert.txt', 'w') {|f| CSV.read('hoge.txt').map{|m| m = m[0].split('|'); "[#{m[0]}](#{m[1]})"}.each {|d| f.puts d } }

# before
# http://jibun.atmarkit.co.jp/scenter/ittrain/121_cal.html | ITトレメ Ruby技術者認定【Gold】試験 過去問題一覧 - @IT自分戦略研究所
# after
# [http://jibun.atmarkit.co.jp/scenter/ittrain/121_cal.html ]( ITトレメ Ruby技術者認定【Gold】試験 過去問題一覧 - @IT自分戦略研究所)

こういうテキスト処理もワンライナーでサクッとできるRuby最高です!