Ruby
HTML
CSS
RubyOnRails

初めてRailsでWebサービスを作る前に最低限やっておきたい7つのこと

初心者が初めてrailsでサービスを作りたいときに最初に最低限やっておきたいこと7つのことを書き記しておく。

なお先に触れておくが本記事の対象者は「オンラインサービス等でrailsについて学習したことはあるけれども、実際に自分でサービスは作ったことがない方」である。なので、プログラミングに一切触れたことがない人にとってはあまり収穫のない記事になるかもしれない。逆に、上記該当者にとっては今後Railsでサービスを初めて作る際に参考になることがあると思う。

それでは早速記事に入っていく。

サービスの定義

まず最初にやらないといけないことは自分がどのようなサービスを作るのかを明確にすることである。曖昧なままにサービス作成を開始すると、コードを書いている途中で「あれ、自分何作ってるんだっけ」と迷子になってしまうので、最初に物事を定義しておくことは大事なのである。最低限、以下の点は意識しておきたい。

2W1H

What

自分が作るサービスが何を提供するのかを決めること。

Who

自分が作るサービスは誰のためのものなのかを決めること。

How

自分が作るサービスは、価値をどのように提供するのかを決めること。

機能の洗い出し

次に行うのは機能の洗い出しである。自分が作るサービスにはどのような機能が付いているのかを思いつく限り上げていく。例えば、ここで挙げるべきものとして適当な例は、ログイン機能、投稿機能などである。

画面設計

自分のサービスの画面について考える。「topページはどこで、このボタンを押したらあのページに遷移して...」といったことを考える。人によるが、この時点でモックアップを作成することをオススメする。なぜならそうすることにより、サービスの全体像が見えやすくなり、この先の設計をする際に、楽になるからである。

DB設計

データベースを何個用意するのかを決定する。例えば仮に「ユーザーがTwitter的な感じで何かを投稿することができるアプリが作りたい」となった場合には、少なくともUserのDBとpost(投稿)のDBは必要になる。

URL設計

事前に行った画面遷移やDB設計を参考にして、URL設計を行う。どのURLを叩けばどのページに遷移するかを決める。その際にhttpメソッド(get,post,patch,delete等)は何にするか、どんなパラメーターを渡すかまで決めることができたらなお良い。

gem設計

本サービスを作る際にどんなgemが必要になるかを事前に決めておく。サービスの実装に入る前に、Gemfileに記入してしまうとよい。

controller/modelを事前に作る

本サービスを作る際にどんなcontroller/modelが必要になるかを事前に決めておく。決めたら最初に「rails g controller/model」とコマンドを打ってしまって、こちらも実装に入る前に全て作り終えておくのが良い。

gem設計、controller/modelに関してはチーム開発を行う際には必須である。最初に開発者全員で意識統一を測るため&gitでコンフリクトをできるだけ起こさないために、事前に取り組んでおくべきである。