教材の内容に関係のない質問や教材とは異なる環境・バージョンで進めている場合のエラーなど、教材に関係しない質問は推奨していないため回答できない場合がございます。
その場合、teratailなどの外部サイトを利用して質問することをおすすめします。教材の誤字脱字や追記・改善の要望は「文章の間違いや改善点の指摘」からお願いします。
本教材はプログラミング言語Rubyの上で動作するWebアプリケーションフレームワークであるRuby on Railsを使ってAkinator風のゲームアプリを作成します。
Akinatorとは、みなさんが頭にイメージしたキャラクターを当ててくれるゲームです。
時間はかかりませんのでどんなゲームなのか先ずは触れてみてください。
参考)Akinator
本教材はデータベースを使ったデータの絞り込みに慣れることを目標とします。
データベースの絞り込みは奥が深く様々なシステムで多用されますが、プログラムするときに求められる絞り込みの条件は様々であり複雑な条件を求められることもあります。
読者のみなさんがプログラムを書く中で、そんな状況に直面したときスムーズな一歩が踏み出せるため、実践的な絞り込みを身につけましょう。
教材を進めて行く上で質問項目がございましたら、「質問」の箇所からご質問ください。 (Mac OS以外での開発環境における質問対応はできかねますのでご了承ください。)
<div>
、<ul>
、<img>
などのタグの使い方とCSSを用いた装飾の仕方を理解している)cd
、ls
、pwd
、mkdir
、cat
、vi
を使ったことがある)RubyやRuby on Railsを一度も触ったことがない方は、まずはProgate等で学習することをおすすめします。
・progateなどのRailsの教材を見ながら簡単なサンプルアプリケーションを作ったことがある方
・Rubyは学んだことがあるけど、Railsはあまり触ったことがない方
・入門書の内容は理解できるが、複雑なアプリケーションだとどういうプログラムになるのかイメージが沸かない方
・入門書の内容は理解できるが、同じレベルの内容を入門書(正解)がない状況で実装できるか不安な方
・データベースの検索処理を実装しても「正しく動いているか」不安に感じてしまう方
・ゲーム性のある作品をつくってみたい方
Rails6系。
本教材ではTechpitnatorというアプリを作ります。
思い浮かべている漫画を質問に答えていくことで当てるアプリです。
本家Akinatorは、思い浮かべている人物を当てるゲームですが、本教材Techpitnatorでは漫画を当てるゲームにします。
完成イメージです。
本教材を進める上での環境を整えたり、設計を解説します。
新規Railsアプリケーションの作成を行い、開発の準備を行います。
ゲームのスタート画面を開発します。見た目を効率よく整えるためにBootstrapの導入も行います。
質問・回答する画面を開発します。
絞り込みを行うアルゴリズムを開発します。はじめに、連載中かどうかの絞り込みを開発します。
絞り込みアルゴリズムに、ジャンルでも絞り込みを追加します。
絞り込みアルゴリズムに、連載誌でも絞り込みを追加します。
ゲームを完成させ、実際に遊んでみます。
本ゲームの将来を考えたときの可能性や課題について考えます。