Ruby 技術者認定試験 Gold に合格した
Ruby 技術者認定試験 Gold に合格した
まとめ
Ruby 技術者認定試験のGoldに 86 点で合格した- REx - Ruby Examination を何度も解くのが良さそう
Ruby 技術者認定試験 Gold とは?
Ruby技術者認定試験 に試験要項が書いてある。
Ruby Association Certified Ruby Programmer Gold version 3:
Silverで求められる範囲(文法、オブジェクト指向、組み込みライブラリ、実行環境など)を 更に掘り下げた知識に標準添付ライブラリ知識やアプリケーション設計に必要となるクラスやオブジェクトに関する知識を追加し、 Rubyによるプログラム設計技術を持つことを認定します。
なぜ受けたか?
去年、Silver を受けて合格した。
今年も会社からお金が出たので、Gold を受けてみた。
直近は、Rails のプロジェクトのコードをたまに読むことがある程度。
仕事で Ruby はほぼ書いていないが、プライベートで少しスクリプトを書くことはあった。
過去 3 年くらいは、Rails のプロジェクトを担当していて、1 番自分が使っている言語ではあった。
勉強時間
Silver と同じく受験の 2 週間くらい前から始めた。
勉強時間は、15 ~ 25 時間くらいだと思う。
勉強内容
下記の問題を解いて、間違えた問題だけ解き直す方式で進めた。
理解が浅いところは、 オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル (Ruby 3.2 リファレンスマニュアル) を見て確認。 実際に Ruby Online | ブラウザでプログラミング・実行ができる「オンライン実行環境」| paiza.IO で実行して、理解を深めた。
REx - Ruby Examination
合計 6 回解いた。 試験前日に 2 回解いた。
50 問解かないと答えが見れないのが、地味に辛い。

[改訂2版]Ruby技術者認定試験合格教本(Silver/Gold対応) Ruby公式資格教科書
version3 には対応していないが、ほとんど変わっていないと思うので利用した。
演習問題 と 模擬問題 をそれぞれ全問題解いて、間違えたところのみ解き直すのを 3 回繰り返した。
他
下記についても全問題解いて、間違えたところのみ解き直すのを 2 回繰り返した。
試験前日
Silver 受けたときのことを覚えていたので、受験の流れなどは確認しなかった。
CBT体験版|受験者の方|CBT/IBT 世界水準の試験運営|プロメトリック を試して雰囲気を掴んだ。 受験の流れ|受験者の方|CBT/IBT 世界水準の試験運営|プロメトリック を確認した。
試験直前
受付
試験開始時間の 30 分くらい前に着いて受付をした。 勉強したかったので断ったが、開始時間を待たずにすぐ受けることもできた。
持ち物
持ち物は、身分証明書(免許証)だけで良かった。
申込時の PDF の印刷、筆記用具なども必要ない。
シャープペンシルとメモ用紙が用意されていた。
試験会場には、腕時計の持ち込みはできない。
試験中
試験時間は 90 分だったが、50 分くらいで退出した。
1 回全問見直して、あとで見直す のチェックをしていた問題だけ、3 回見直した。
何度見直してもわからない問題が、5 問くらいあった。
迷ったところ
このあたり迷ったので、見直しておきたかった。
- ヒアドキュメントの
<<-と<<~の違い- リテラル (Ruby 3.3 リファレンスマニュアル)
<<-: 終端行をインデントすることができる。インデントが残る。<<~: 最もインデントが少ない行を基準にして、全ての行の先頭から空白を取り除く
- リテラル (Ruby 3.3 リファレンスマニュアル)
__send__- BasicObject#send (Ruby 3.3 リファレンスマニュアル)
- オブジェクトのメソッド
nameをargsを引数にして呼び出し、メソッドの結果を返す
- オブジェクトのメソッド
- BasicObject#send (Ruby 3.3 リファレンスマニュアル)
public_send,private_send- Object#public_send (Ruby 3.3 リファレンスマニュアル)
- オブジェクトの
publicメソッドnameをargsを引数にして呼び出し、メソッドの実行結果を返す
- オブジェクトの
Object#private_sendは存在ない
- Object#public_send (Ruby 3.3 リファレンスマニュアル)
printは、to_sで文字列に置換して出力する- Object#to_s (Ruby 3.3 リファレンスマニュアル)
Kernel.#printやKernel.#sprintfは文字列以外のオブジェクトが引数に渡された場合このメソッドを使って文字列に変換する
- Object#to_s (Ruby 3.3 リファレンスマニュアル)
'a' ? 'b'は実行できないsyntax error, unexpected end-of-input, expecting ':'
=~- String#=~ (Ruby 3.3 リファレンスマニュアル)
self =~ otherは、正規表現otherとのマッチを行う
- String#=~ (Ruby 3.3 リファレンスマニュアル)
Stringのメソッド- 存在する
- 存在しない
contains?
アンケート
全問解いたあとに、アンケートがあった。 アンケートの回答時間も、試験時間に含まれていた。
試験後の結果確認
結果が、画面に表示された。 86 点で合格だった。
試験後のメールでも結果を確認できた。

所感
勉強時間が足りなかった。 90 点は取りたいと思っていたので、悔しい。
どこを間違えたかわからないので、気になった。 迷ったところをメモしていたが持ち帰れなかった。
次は、Google Cloud 認定資格、AWS 認定 周りの資格を取っていきたい。
参考
- Ruby技術者認定試験
- 問題集
- 動作確認環境
- Ruby 3.3 リファレンスマニュアル
