21
11

More than 1 year has passed since last update.

【RubySilver対策】Ruby特化のクイズサービスを作りました。

Posted at

はじめに

ポートフォリオとしてRubyの問題を提供するクイズアプリ『RubyMania』をリリースしました。
資格勉強でなくてもご利用頂けるかと思います。

私自身プログラミング未経験ではございますが、学習を始めて5ヶ月くらいの頃にRubyを体系的に学んでみたいと思ったのがきっかけでRubySilverとRubyGoldを取得させて頂きました。  

RubySilverとRubyGoldを取った時の話はまたどこかで記事に出来ればと思います!

当時資格を勉強していて感じた事としては、

①知ってるメソッドが一つ増えると読めるコードが増えるので勉強が楽しい
②初学者が資格取るとモチベーション上がってもっと頑張ろうって思える
③でも資格教本の問題やネットにある問題をやり尽くしてしまってこれ以上どうして良いか分からない
④しかも答えと問題を暗記してしまってこれ以上どうして良いか分からない

そんな楽しさの共有と悩みを持つ方の一助となれたら嬉しいなと思ってこのサービスを作りました。

難易度としては
①Progateで勉強しててRuby何となくわかった!
②自分の理解度の確認で少し肩慣らししたい!
という方に向けてなので初学者寄りの難易度となっています。

※オブジェクト指向というカテゴリーは少し難易度が高いかもしれません。

サービス概要

ご希望のカテゴリーを選択して問題を解いて頂くことができます。
ログイン不要なのでお気軽にチャレンジしてみて下さい。

現状実装したカテゴリーは.
①文字列(String)
②数値(Integer)
③配列(Array)
④ハッシュ(Hash)
⑤基礎編総合
⑥オブジェクト指向
⑦正規表現(Regexp)
と7つのカテゴリーを実装しました。

問題は毎回ランダムに出題されて10問形式と一問一答形式を選ぶことが出来ます。
Image from Gyazo

Githubログイン

このアプリはGithubログインを採用しております。
githubログインして頂くと下記のメリットがございます。

①自身の今までの記録や点数がチャート上に反映されます。
②レベルアップ機能があります。
③それぞれのカテゴリーでご自身の偏差値も確認することが出来ます。

Image from Gyazo
本気で受験を希望している方や、勉強したいという方は是非ログインして遊んでみてください!

こだわったポイント

①問題作成周り

一番気合と根性が必要だったのが問題作成周りです。

総問題数は350問を超えるのですが問題数と解説を350問考えて選択肢を一つも問題につき4つ考えます。
最も楽しかった反面苦労したポイントの一つです。

②トップページ

パッと見て面白そう!と思ってもらえることを意識して作成しました。
スライダーでくるくるさせたりフワッと要素を出現させたりしてなるべく見た目を楽しく整えました。

ここでは
①swiper.js
②ScrollReveal.js
③Chart.js
④particles.js
を使用しています。
Image from Gyazo

③問題がカテゴリー毎にランダムに生成される

自分の以前の悩みとして問題の順番が定型化していて問題と答えを暗記してしまうという悩みを抱えていました。

なのでなるべくカテゴリーを分けて毎回ランダムに問題が解ける様にしています。
これでも何回もやれば暗記してしまうことは必至ではありますがなるべく暗記出来ないように実装させて頂きました。

使用技術やGem等

主な技術

Ruby 3.0.2
Rails 6.1.4
Bootstrap5
JavaScript
jQuery

主なGem

sorcery
meta-tags
draper
seed_fu

ER図

Image from Gyazo

最後に

特に初学者の方は勉強していて分からなさすぎて自信が無くなってしまったり、どうして良いか分からない、効率の良い勉強方法はないか、色んな悩みあると思います。

でもまずは脳死でとにかくテキスト読むだったりごちゃごちゃ考えないでとにかく勉強ってスタンスも時には大事だと思います。

そんな時は是非RubyManiaで遊んでみてください。
脳死でメソッド覚えましょう。

またこのポートフォリオに関しては設計の段階から様々なアドバイスを頂き、何とかリリースをすることが出来ました。
使用した感想や、バグを発見して下さった皆様本当にありがとうございます。

このサービスを通して少しでも資格取得の役に立ったり初学者の方の自身に繋がると嬉しいです!
自分もまだまだ向上心を持って勉強頑張ります!

最後までご覧頂きありがとうございました!

21
11
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
11