見出し画像

Ruby技術者認定試験Silverに合格するための対策まとめ

以前、「Ruby技術者認定試験Silver」に合格したので、そのときの勉強法をお伝えします。勉強期間としてはゆるーくやって2週間くらいでしょうか。

結果は100点中88点。合格点が75点なので比較的ゆとりをもって合格することができました。

画像1

早速、ぼくの勉強方法を時系列順に紹介します。同じように学習すれば充分合格可能だと思います。

ProgateでRubyを知る

まず手を付けたのはオンライン学習のProgateです。ProgateではRubyのコースが全5レッスン用意されていて、まず最初に「Rubyってどんな言語かな?」と触ってみるものとしては最適だと思います。

無料会員だと序盤のレッスンしか見ることができないので、月額980円(安い!)の有料会員にしてしまうのがオススメです。

Rubyをはじめて触ってみた印象は、Pythonに近くてとても書きやすい言語という感じでした。

合格教本を通読する

ProgateでRubyの基本をおさえたあとは、公式の合格教本を通読しました。Rubyに限らず資格試験全般に言えることですが、基本的には公式が出しているテキストほど合格に近いものはありません。

上記の本を使いましたが、「これがよさそうだった」というよりは、比較的マイナーな試験であるためか「これしか選択肢がなかった」と言ったほうが正しいです(笑)

さすが公式テキストだけあって、SilverとGoldの出題範囲をそれぞれの章で示してあり、試験の際に特に注意すべきものはその都度指摘があります。

しかし、文法や組み込みクラスについては網羅的ですが羅列的で、いまいちなにをどう覚えればいいのかは最初分かりづらかったです。あとで演習をするときの辞書的な使い方でやっと注目ポイントが見えてくる感じです。最初はとりあえず教本を通読して、Rubyの文法や組み込みライブラリについてサラッと確認することが目的です。

ぼくは他言語で知っていたので軽く流しましたが、まったくの初心者だと「オブジェクト指向」の考え方でつまづくのではないかと思います。もし難解な場合は、ネットで調べたりほかの本で補うといいでしょう。

教本の演習問題やネットの問題を解く

最後に、教本の最後についている演習問題(計80問)やネット上で公式に公開されている問題、そしてミニツクというサイトにある問題を解きました。

ここで初めて、どんな問題が出てどんなことに注意すべきなのかわかったので、もうちょっと早く演習に移行してもよかったかもしれません。

しかし、組み込みクラスのメソッドなどをあまりにも知らないと最初にこれらを解いてもチンプンカンプンです。ある程度教本を読んでからをオススメします。

ここからはひたすら問題を解いて、解説を読んで、教本やネットで該当箇所を調べて知識をつけて…の繰り返しです。ひたすら、といってもぼくの場合はそれぞれ1~2回程度しかやれていません。しかし本番では非常に類似した問題が数多く出題されたので、なんとか合格することができました。

特に教本とネット上の公式の問題が効果ありでした。ミニツクはあくまで補助として考えていいと思います。

実際にRubyを動かす

問題を解くことと並行して、気になった箇所を実際にPCで動かしてみるということもしました。プログラミングは実際に書いて動かすことが理解への一番の近道。ぜひサボらずにやってみましょう。

演習で分からなかった問題を少しアレンジしてみて、予想と同じか、はたまた違った挙動をするのかを見て理解を深めていきました。

Ruby技術者認定試験Silver合格のポイント

Silverの試験で合格するために重要になってくるポイントがいくつかあると感じましたので、それをメモしておきます。

★破壊的・非破壊的メソッドについて

Silverの試験ではとくに組み込みクラスのメソッドが破壊的なのか・非破壊的なのかを重視している印象でした。

非破壊的メソッド:もとのオブジェクトを変更しない
破壊的メソッド:もとのオブジェクトを変更する

多くのメソッドは非破壊的ですが、メソッド名に「!」がついたら破壊的メソッドになったり、そうでなくても「concat」(←超出る)のような破壊的メソッドを理解しているかが問われます。

★正規表現について

Ruby以外でも情報系ではよく知られる正規表現ですが、これについても結構出題されている印象でした。

「次の正規表現にマッチする文字列を選びなさい」
「○○または△△がマッチする正規表現を選びなさい」

など、そこまで複雑ではありませんが正規表現の理解を問われるものが予想以上にありました。情報系のRuby初学者にとっては逆にラッキーな問題かもしれません。

ぼくはというと、正規表現を勉強したのが何年も前なのですっかり忘れていて、思わぬ落とし穴でした。笑

★とにかく組み込みクラスのメソッド!

Silverの試験範囲で大半を占めるのが、演算子(Rubyでは演算子もメソッド)やStringなどの組み込みクラスのメソッドについてです。

それぞれのメソッドがどのような働きをするのかを知っておく必要があるのですが、とにかく数が多いことと、名前が違うのに振る舞いが同じなど、ややこしいことがあります。

ここはもう頑張ってとしか言いようがないのですが、勉強していると頻出なものはなんとなく分かってきますよ。

まとめ

以上が、ぼくがRuby技術者認定試験Silverに合格した勉強方法&合格のポイントです。比較的難しくない試験ではあるので、Rubyの基礎固めや学習の証明のために取得してみるのはアリなのではないでしょうか。

よりよい発信のための投資(書籍など)に充てさせていただきます。なにより応援のお気持ちが嬉しいです。