
こんにちは。もともと社会福祉士で、文系プログラマーとなった、ハラッパです。
以前、独学からプログラミング言語Rubyの基礎資格を、取得しました。(Ruby技術者認定試験 Silver)
これから受験を考えている方も、また興味がある方も
「いったい、どんな勉強をしたら受かるの?」という部分は、気になりますよね。
特別スクール等に通ったりせず、正しい方法で学習すれば、
まったくのプログラミング初心者でも、合格可能というのが体感でした。
この記事では経験をもとに“Ruby認定試験 Silver”の攻略法をお伝えします。
当日テストは、個々にPCが当てがわれるのですが・・
問題を解き終わり『試験終了』のボタンを押したなら、その場で合否が画面に。

この瞬間は、思わずマウスを持つ手も、緊張で震えます。
しかし、この記事で示す方法に沿って取り組めば、当日も自信たっぷりに
終了後は、よろこびと開放感にひたって、会場を出ることができると思います。
合格後は資格証や、ロゴシールが自宅へ郵送され、達成感を得られますので、
ぜひ、最後までお読みいただければ、幸いです。

最終的にやりとげる参考書は、1冊
最終的に攻略する参考書は、この公式ガイドブックだけで大丈夫です。
出版年数やバージョンが古いので、不安に思われるかも知れませんが、
9割以上、今でも通用します。
ほかの参考書も多数あり、僕も最初はいろいろ、目移りしてしまいましたが
合格を一直線に目指すなら、あれこれ手を出さない方が良いと思います。
あるていどプログラミングに慣れていたり、他言語を習得されている方は、いきなりこれに取り組めばOKです。
ただ、僕のように「関数ってなに?ええっと、クラスって?」と、
超初心者からスタートの方は、いきなり読み始めると、挫折する確率が高いと思われます。
プログラミング未経験の方は、以下の方法で理解を進めた後に、
この本に取り組むことを、お勧めします。
たった2日でできるRuby(参考書)
初心者にとって、とても分かりやすく、解説されています。
プログラミングは、謎の横文字オンパレード
「やった、動いた!」という達成感まで
みちのりが遠いのが、挫折への落とし穴です。
この本は、自分のPCで少しずつ、手を動かしながら、基礎を理解していける内容になっています。
適度に例題も載せられているので、解きながら・・またコードを入力してみて「ほんとうだ、プログラム動いた!」という達成感を味わいながら、読み進めていけます。
プロゲート(WEB学習)
※こちらから、該当ページへ行けます。
Rubyのみならず、ほかの言語も多数、Webで基礎から学べます。
ユーザーのレベルに応じ、取り組めるうえ、1レッスンが、程よい長さで区切られています。
無料で、スマホでもPCでも好きな時間に、自分のペースで勉強できる、素晴らしいツールです。
公式ガイドの攻略法

さて、基礎を理解したところで、公式ガイドに取り組みましょう。
大別すると、Rubyの解説と、巻末の模擬問題に分かれています。「解説を読む←→模擬問題を少しずつ進める」のくり返しが、良いと思います。
ちょうど問題数が50問×2セットあるので「きょうは○問進めよう!」と、まいにちルーティーン化すると、達成度もあり、勉強に張りが出ると思います。
またコツとして、この試験では用語や「メソッド(PCへの命令)」を、たくさん暗記する必要があります。
丸覚えは大変。そこで「こじつけイメージ戦法」を使うことをお勧めします。

たとえばrubyには、文字列を、最初の1箇所だけ置き換える「sub(サブ)」という、メソッドがあります。もし下のような文字列があった場合・・
①string = “ruby ruby ruby”
②puts string.sub(/ruby/, ‘harappa’) ←文字列に『ruby』という文字があったら、最初の一箇所だけ『harappa』という文字に変えなさい。
出力される結果→③harappa ruby ruby
という風にするメソッドです。「こういうの、どうやって記憶したらいいの?」と、取っかかりが無いですよね。
「1192(いいくに)作ろう鎌倉幕府」といった、語呂合わせも、ないです。
そこで・・内容は、何でもいいのですが
サブ→サーブ(バレーボールの)と、適当に、語感のちかい言葉を連想。
サーブを打って、並んでいる白いボールの最初の1つに、
赤色の違うボールを命中させ、弾き飛ばしてしまう。
そんな絵を思い浮かべます。
こうして文字で書くと、長いのですが、脳内でイメージすれば一瞬。
イメージと共に「sub=サーブ」と覚えましょう。

また、名前も効果も、subと紛らわしいメソッド「gsub(ジーサブ)」というものがあります。
これは、こちらが指定した文字にマッチするものを、すべて置き換えてしまうという効果があります。
①string = “ruby ruby ruby”
②puts string.gsub(/ruby/, ‘harappa’) ←文字列に『ruby』という文字があったら、ぜんぶ『harappa』という文字に変えなさい。
出力される結果→③harappa harappa harappa
g→爺、「爺サーブ」と連想。お爺さんがサーブをして、すべてのボールに命中
弾いて、ちがうボールにしてしまう、そんなイメージです。

最初、ダジャレやイメージを考えるのには、少し時間がかかります。
しかし、ひたすら単純な暗記より、考えていて楽しいですし、
いちどハマれば、圧倒的に記憶に定着します。
以下は、自分が他のメソッドでイメージした連想例です。
fetchメソッド→登録されている値を、取り出すメソッド。→フェチが、好きなものを取り出してる。

popメソッド→ 配列の末尾の要素を取り出す→“ダイの大冒険”のポップが、最後列のモンスターを倒してる

また、最初は分かりにくい、数々の横文字ですが
『クラス→設計図』『モジュール→部品』といたように、自分の理解しやすい言葉に、
勝手に、置き換えてしまいましょう。
参考書にも、どんどん自分流の書き込みをして行った方が、良いです。


プロも、すべてを暗記しているのか?

プログラミングで仕事経験がない方は、もしかしたら、このように思うかも知れません。
将来も本格的にやるなら、超ぶ厚い辞書のような量を、まるまる記憶しなければいけないのか?
実際は、そんな事はありません。
本にしろ、ネットにしろ「○○をしたい時は、確か○○を見れば、載っていたな」というのを、
おぼえているといった、感じです。
ただ、このRuby技術者認定試験においては、テスト中、すべての物が閲覧できません。
公式ガイドの内容は、暗記しておく必要があります。
ぜひ、上記の「こじつけイメージ戦法」なども、役立ててください。
まとめ

以上、Ruby技術者認定試験・silverの攻略法についてmお伝えしました。
この公式ガイドの内容さえ、覚えて理解し、巻末の模擬問題を解けるレベルになれば
合格ラインは堅いです。おそらく試験時間も、余るくらいだと思います。
受験料は1万6千円超と、結構な金額(2020.6現在。学割もアリ)です。
時間もお金も、無駄にしないため、ぜひ1発で合格してしまいましょう。
皆さんのチャレンジを、心から応援しています。
ここまでお読みいただき、有り難うございました。