
今回は人生逆転サロンを運営中の神里さんが作った、
(ここから先は「ドラクエ風アプリ」と呼称)の教材を実際にやってみたレビュー記事です。
これから教材を買ってみようか迷っている方には参考になるはず。
具体的には、

- ドラクエ風アプリでどんなことが学べるの?
- Rubyの基礎を固めたい
- どうせやるなら現場で使えるプログラミングスキルを学びたい
こんな悩みを解決できる記事になっています。
- 教材で学ばないことがわかる
- 教材で学ぶことがわかる
- 現場で使える知識にするための教材の効果的な使い方がわかる
読み終える頃には、
「Rubyをガッツリ学んでみたい!」
「自分もドラクエ風アプリを作ってみたい!」
と思えるような内容になっていますので、じっくり読んでみてください。
目次
「ドラクエ風ゲームプログラムを作ってみよう!」とは?

ドラクエ風アプリ教材は、現役エンジニアが主にテキストベースで作った教材を提供しているサービス「Techpit」で購入可能です。
現在(2019年12月時点)1,280円で販売されています。
楽しんで学習できるよう配慮されているので、分厚い技術書1冊に取り組むよりもハードルが低く、価格も安いのでオススメです。
またこちらの教材はRuby on Railsではなく、Rubyを題材にした内容となっていますのでご注意を。
本教材は0章〜4章構成になっています。
0章:はじめに
1章:勇者クラスの定義
2章:モンスタークラスの定義
3章:攻撃処理の実装
4章:クラスの定義とファイル分割
教材からどんなことが具体的に学べるのかは、この後しっかり説明していきますよ。
神里さんって?
ところで、神里さんって誰よ?と思われる方もいらっしゃるかもしれません。
神里さんは僕も参加させてもらっている、オンラインサロン「人生逆転サロン」を運営しており、つい先日には会社を設立された、超行動型ビジネスプログラマーさんです。
【ご報告】
会社を設立しました生まれて初めて会社を作るので、どうせなら超ナウい名前にしようと思い、会社名は
【株式会社やんばるスパイク】
にしました
沖縄の方言で「島ぞうり」という意味です
領収書貰う時死ぬほど恥ずかしいです pic.twitter.com/7PrScZc2bS
— かみざとよしと / 地方移住で理想の暮らし (@yoshito410kam) December 23, 2019
一度聞いたら忘れられない会社名ですね!
これからは自社開発をスタートさせ、地元沖縄を活性化させようと様々なビジネス展開をされるそう。
もう少し神里さんのことを知りたいなーと思った方は、
ご本人のブログ「さて、プログラマー目指しますか。」を覗いてみてください。
なぜ完全未経験でアラサーからプログラマーになったのか?
どうやって会社を設立するほどに成長できたのか?
学ぶべき人生戦略や考え方に触れられます。
教材で学ばないこと

少し前置きが長くなってしまいましたが、いよいよ本題に入っていきます。
まずはじめに、こちらの教材では学ばないことをおさえておきましょう。
教材を買った後で、「自分が学びたかった内容と違う!」となってしまってはもったいないですからね。
今自分が学びたいことは何なのか照らし合わせてみてください。
- Ruby on Rails
- HTML
- CSS
- Javascript
- Git
ドラクエ風アプリ教材は、全くプログラミングをやったことがない初心者の方は対象になっていません。
Progateやドットインストール、Udemyなどの他教材を使って、プログラミングのことをある程度理解している方向けの教材になっています。
教材で学べること

ではこの教材では具体的にどんなことが学べるのか。
大きく3つあります。
- 現場で使えるロジックの組み立て方
- クラス・モジュール・メソッド・セッターなどの使い方
- リファクタリングの具体的なやり方
順番に説明していきますね。
現場で使えるロジックの組み立て方
プログラマーとして仕事をする上で、ロジック(処理)を考えて実装できるスキルがかなり重要です。
なぜなら現場で設計書通りに実装してほしいと依頼されても、具体的なプログラムの組み方がわからなければ実装ができないからです。
そこでドラクエ風アプリ教材では、自分の頭で考えてプログラムを作れるような教材になっています。
クラス・モジュール・メソッド・セッターなどの使い方
もし見出しの用語を聞いたことが一度もないという方は、Progateやドットインストールなどでプログラミングの基礎を学んでからドラクエ風アプリ教材にチャレンジすることをオススメします。
なぜかというと、これらはRubyの重要な機能なので聞いたこともないとなると、挫折してしまう可能性が高いからです。
ProgateならばRubyの基礎を学べるので、一度基礎学習してからドラクエ風アプリに入った方がスムーズに進められるはずです。
一方、聞いたことはあるけど、どうやって使うか何となくしかわかってないという方は教材の対象者です。
どうしてかというと、処理の切り分け方やデータ受け渡しの処理をコーディングしていくので、自然と各機能の扱い方を学ぶことができるからです。
概念は何となく知っていても、「実際に使ってみろ!」と言われるとなかなか難しい…というのはよくあるのではないでしょうか。
教材ではその辺りをしっかりとおさえ、クラスやメソッドなどの機能を使って実践的に学ぶことができますよ。
リファクタリングの具体的なやり方
通常の教材は、ある程度完成されたコードを初めから書いていくことが多いので、あまりリファクタリングを自分でやる機会が少ないかと思います。
ですがリファクタリングは現場で頻繁に行われ、システムの品質に関わる欠かせない作業なので、早いうちに慣れておいた方があとで楽になります。
教材ではリファクタリングをする機会が多く、分かりやすい変数名にしたり、privateメソッドやクラスに処理を切り分けたりしてどんどんコードを最適化していきます。
教材の効果的な使い方

ここからはさらに深くRubyを理解するために、教材の効果的な活用方法をご紹介します。
- チェリー本を辞書代わりに使って理解を深める
- 教材をRuby on Railsで実装してみる
- 教材にオリジナル機能を追加し、ポートフォリオの1つにする
こちらも順を追って説明していきますね。
チェリー本を辞書代わりに使って理解を深める
伊藤淳一さんが執筆した『プロを目指す人のためのRuby入門』という技術書で、多くのRuby学習者から「チェリー本」という愛称で呼ばれています。
よく見かけるのはProgateやRailsチュートリアルを一通りやってからチェリー本に進むケースですが、実際はどうなんですかね〜?同じようにプログラミング初心者でチェリー本に進んだ方、教えてくださ〜い! https://t.co/YUWvXnSraQ
— Junichi Ito (伊藤淳一) (@jnchito) May 14, 2019
チェリー本も全くのプログラミング初心者の方は対象としていませんが、
丁寧にRubyに関する知識がまとめられていて、ドラクエ風アプリ教材と併用して使う
例えばキーワード引数(「**params」のような引数)について、
ドラクエ風アプリの「2章 モンスタークラスの定義」で学ぶのですが、チェリー本を使うことでより理解を深められました。
チェリー本の「第5章 ハッシュやシンボルを理解する」にてキーワード引数が解説されていて、

あー、だからキーワード引数を使うのか!
と納得しながら学習できました。
こうやってうまく教材を組み合わせることで、プログラミング学習がもっと楽しく学べるし、スキルをぐんと上げられますよ。
教材をRuby on Railsで実装してみる
一通り教材を学び終えたら今度はRuby on Railsで実装してみることをオススメします。
Rubyで基本的な機能は実装済みなので、あとはRailsでどうやったら動かせるのか試してみると、
サンプルコードを使って動かすよりもずっと楽しいはずです。
まだ実装には至っていませんが、僕も教材をベースにオリジナルアプリを作成しようと思っています。
僕は仮面ライダーが好きなので、勇者を仮面ライダーに、スライムを怪人に変えて、チャット風に戦いが進むようなアプリを作ってみようと考えています。
自分の好きなキャラクターや趣味を取り入れることで、さらにプログラミングが楽しくなるはずですよ。
教材にオリジナル機能を実装し、ポートフォリオの1つにする
Railsで実装してみたり、新しい機能を追加してみたら、
ぜひ自分のポートフォリオとして公開できるよう、さらに精度を上げていきましょう。
おそらくプログラミング教材を使って学習しているということは、
「スキルを向上させたい」
「プログラミングの仕事にチャレンジしてみたい」
「転職してみたい」
と考えている方が多いのではないでしょうか。
プログラミングスキルがどの程度のレベルなのかを客観的にアピールできるのが、ポートフォリオですよね。
サンプルコードを全コピペしたアプリをポートフォリオにしてはもちろんダメですけど、
自分で考えて実装した機能やリファクタリングしたコードは立派なポートフォリオになります。
自分はプログラミングスキルを身に付けて何をやりたいのか。
どこを目指すのか。
やみくもにポートフォリオを作るよりも、戦略を立ててスキルアップした方がずっと早く結果を出せるはずです。
まとめ

いかがだったでしょうか。
少しでもドラクエ風アプリ教材に興味を持っていただけたら嬉しいです!
当記事をまとめると、
- Ruby on Rails
- HTML
- CSS
- Javascript
- Git
- 現場で使えるロジックの組み立て方
- クラス・モジュール・メソッド・セッターなどの使い方
- リファクタリングの具体的なやり方
- チェリー本を辞書代わりに使って理解を深める
- 教材をRuby on Railsで実装してみる
- 教材にオリジナル機能を追加し、ポートフォリオの1つにする
といった内容でした。
僕自身、ドラクエ風アプリ教材で楽しみながら学習できましたし、もっと自由にアプリを作っていいんだ!と改めてプログラミングの楽しさに気付くことができました。
教材のカリキュラムを一部無料で公開されているので、中身を確認してから考えたいという方は覗いてみて下さい。

以上、
神里さんが作った「ドラクエ風ゲームプログラム」で学べる3つのこと
をお送りしましたー!