IT資格無料解き放題

Ruby Gold 練習問題

Ruby Association Certified Ruby Programmer Gold

200 問(5 分野)・全問解説つき・登録なし

進め方

  1. オリジナルで一周する

    各分野を 2 問ずつ・解説つき(全 200 問から出ます)

    全 10 問のうち 0 問

    10 問ずつ解く→
  2. 分野から解き直す

    間違えた分野だけを、もう一度

記録を別の端末でも続ける(無料)→

ほかの解き方見本の 30 問→
分野・論点から解く5 分野
問題を番号から開く

最初の 10 問(番号を押すと、その問題が開きます)

この資格の問題は に最終確認しました

レベル 0(定着 0%:2 回続けて正解した問の割合)

この資格について

Ruby Gold の練習問題 200 問を、無料・登録不要でこのまま解けます。全問に解説つきで、登録の画面もありません。

Ruby のオブジェクト指向とメタプログラミングを問う上位試験です。ここでは選択式の練習問題を、全問解説つきで無料公開しています。

試験の概要

出題形式
選択式のみ
問題数
50問
試験時間
90分
合格ライン
75%
受験料
16,500円
日本語
あり
当サイトの収録
単一選択 168 問 / 複数選択 32 問

「当サイトの収録」より上の行は、試験を実施する団体が公表している内容だけで、 推定した値は載せていません。

出題範囲

Ruby Goldの練習問題を、このサイトに200問載せています。単一選択が168問で、複数選択は32問です。公式の出題範囲は、五つの分野でできています。

最も大きいのは「オブジェクト指向」で、広さは66。次が「文法」の57、「組み込みライブラリ」の55です。「標準添付ライブラリ」は16、「実行環境」は6になります。

収録数は、オブジェクト指向が66問、文法が57問。組み込みライブラリが55問で、標準添付ライブラリが16問です。実行環境は6問です。

問題文か正解の選択肢に出る語を数えました。moduleが31問、rescueが37問、putsが35問。initializeは22問、superは15問。

refineは12問、yieldは12問でした。Silverより深く、メタプログラミングまで踏み込む構成でしょう。

出題範囲ごとの問数

分野出題範囲の広さ収録解いた解く
1実行環境660 / 6→
2文法57570 / 57→
3オブジェクト指向66660 / 66→
4組み込みライブラリ55550 / 55→
5標準添付ライブラリ16160 / 16→

分野名はRubyアソシエーション「Ruby技術者認定試験」ページの出題範囲のもの(出典)。出題範囲の広さは、当サイトの設計配分の根拠です。「収録」は当サイトが公開している問題数の実測です。

勉強の順番

最初は「実行環境」の6問を軽く回します。続けて「文法」の57問です。rescueとyieldの動きを、ここで読めるようにしておきます。

次に最大の「オブジェクト指向」の66問へ進みます。継承の順番にmoduleとsuperがどう関わるかを、紙に書いて確かめましょう。refineの問題は、見慣れない書き方なので解説をじっくり読みます。

そのあと「組み込みライブラリ」の55問です。複数選択の32問は、正解の数を先に確かめてから選びます。最後に「標準添付ライブラリ」の16問を回します。

実行結果を問う形が多いので、手を動かして試すと定着しやすいです。一周したら、間違えた問題を分野ごとに集めて解き直しましょう。

どんな問題が出ますか

Ruby Gold · 例題 1

次のコードの実行結果として正しいものはどれか。 ```ruby def check(s) s =~ /(\d)(\d)/ $2 end "ab" =~ /(a)(b)/ r = check("34") p [$1, $2, r] ```

1`["3", "4", "4"]`
2`[nil, nil, "4"]`
3`["a", "b", "b"]`
4`["a", "b", "4"]`✓ 正解
解説`$~` とそこから導かれる `$1`、`$2` はメソッドの呼び出しごとに別の領域で管理されるため、`check` の中での照合は呼び出し元に影響しません。したがって呼び出し元の `$1`、`$2` は先頭の照合の結果のまま `"a"` と `"b"` で、`check` の戻り値は `"4"` になります。`["3", "4", "4"]` は `$~` をプログラム全体で共有される変数と考えた場合の結果ですが、実際はそうなりません。`["a", "b", "b"]` の最後の `"b"` は、メソッド内の照合が `check` 自身の `$2` に反映されることを見落とした値です。`[nil, nil, "4"]` のように呼び出し元の値が消えることもなく、呼び出し元の照合結果はそのまま残ります。
Ruby Gold · 例題 2

次のコードの実行結果として正しいものはどれか。 ```ruby module StrExt refine String do def shout = upcase + "!" end end def before(s) s.shout rescue NoMethodError "none" end using StrExt def after(s) = s.shout p before("a") p after("a") ```

1`"none"`、`"none"` の順に出力される
2`nil`、`"A!"` の順に出力される
3`"none"`、`"A!"` の順に出力される✓ 正解
4`"A!"`、`"A!"` の順に出力される
解説`using` の効果は、呼び出した位置からファイルの終わりまでに書かれたコードに及びます。メソッド `before` は `using` より前に定義されているため、呼び出しが `using` の後でも精製は見えず、`NoMethodError` が `rescue` されて `"none"` が返ります。`after` は `using` の後で定義されているので `shout` が使え、`"A!"` です。`"A!"` が 2 回になるのは、呼び出しの位置で有効かどうかが決まると考えた誤りです。`"none"` が 2 回になるのは `using` 後の定義まで無効だと考えた読み方で、いずれも定義位置で決まる仕様に合いません。`nil` が返るのは `rescue` 節の値がない場合の結果で、ここでは文字列を返しています。
Ruby Gold · 例題 3

`Comparable`、`<=>`、`to_s` に関する記述のうち、正しいものはどれか。(2 つ選択)

複数選択(2つ選ぶ問題です)

1`between?(min, max)` は、`min` や `max` に等しい値を範囲外として扱い `false` を返す
2`to_s` を定義すると、`inspect` の出力も自動的に `to_s` の結果と同じになる
3`<=>` が `nil` を返す相手に `<` で比較すると、`ArgumentError` が発生する✓ 正解
4`Comparable` を include して `<=>` を定義すると、`<=>` が `0` を返す組に対して `==` が `true` になる✓ 正解
5`to_s` が `String` 以外を返すと、`puts` で出力しようとした時点で `TypeError` が発生する
解説`Comparable` の `<` などは `<=>` が `nil` を返すと `ArgumentError` を発生させ、`==` は `<=>` が `0` なら `true` を返します。`to_s` を定義しても `inspect` は自動では変わらず、独自の出力にしたいなら `inspect` を別に定義します。`to_s` が文字列以外を返しても `puts` は `TypeError` にならず、`#<W:0x…>` のような既定の表記を出力します。`between?` は両端の値を含めて判定するので、`min` や `max` に等しい値でも `true` です。

全問に、この形式の解説がつきます。

問題の目次

収録 200 問のうち、30 問を番号で開ける見本にしてあります。 Ruby Gold の見本の 30 問へ →

よくある質問

Ruby Gold の練習問題は本当に無料ですか?
はい。このページから解ける Ruby Gold の練習問題 200 問は、すべて無料です。解説を読むのにもお金はかかりません。

登録は要りますか?
登録しなくても全部解けます。このページからそのまま解き始められます。記録を別の端末でも続けたい人は、ログイン(無料)できます。

問題は本物の過去問ですか?
いいえ。試験の出題範囲に沿って当サイトで作った練習問題です。過去の試験問題をそのまま載せたものではありません。

プログラミング言語 の他の資格

Java BronzeJava の入門50問→Java SilverJava の実務基礎試験情報→Java Silver SE17Java SE 17 の実務基礎50問→Java GoldJava の上位試験情報→HTML5 プロフェッショナル Lv1Web フロントエンドの基礎617問→HTML5 プロフェッショナル Lv2JavaScript と API113問→Python3 エンジニア認定基礎Python の文法基礎99問→Python3 データ分析NumPy・pandas・可視化320問→Python3 データ分析実践実務寄りのデータ分析160問→PHP8 初級PHP の基礎280問→PHP8 上級/準上級PHP の応用120問→Ruby SilverRuby の基礎200問→

参考書を Amazon で探す →

数はここで、仕上げは道場で。ここで数をこなしたら、道場へ。出るところだけの模試とテキストで、最短で仕上げる。 記述式・コマンド入力・模試まで本番形式で仕上げるなら資格道場へ。