この記事では、テックアカデミー (Webアプリケーションコース)のメンタリング第2回目の記事です。
今回は、プログラミングの学習方法や、オリジナルサービスについての内容となっています。
前回のメンタリングが終わってから、Twitterクローンを開発するところで詰まっていたので、ちょうど良いタイミングでメンタリングを行えました。
テックアカデミーのメンタリング第2回目の内容
今回は、以下のような内容を話しました。
$ rails db:migrate:reset
で何が行われているのかredirect_back(fallback_location: root_path)
の意味- プログラミング学習をどのように進めていけば良いか
- オリジナルサービスについて
マイグレーションファイルに関する質問

間違えてマイグレーションファイルに手動でコードを加えてしまったので、slackで質問したところ、rails db:migrate:reset
を行った後に、rails db:migrate
を行えばいいよと教えてもらいました。そこで、上記のコードを実行したところ、期待通りに動いたんですが実際、rails db:migrate:reset
は、裏でどのような操作が行われているのでしょうか?

rails db:migrate:reset
は、データベースをドロップさせてから、マイグレーションファイルの読み込みを行っています。つまり、db/migrate/
以下全てのマイグレーションを実行してテーブルを再生成しています。
fallback_location について

def destroy
@task.destroy
flash[:success] = 'Taskは正常に削除されました'
redirect_back(fallback_location: root_path)
end
とありますが、redirect_back(fallback_location: root_path)
の部分は、一体どういった意味なのでしょうか?

万が一の保険のようなものです。通常は redirect_back
によって、アクションが実行されたページに戻るのですが、エラーなどが起きて、そのページに繋がらない場合に、fallback_location
を指定し、root_path
に戻るように指示しています。
プログラミング学習の進め方について

私自身、全体像を把握してから、分からないコードは前に戻って復習するという形を取っているのですが、プログラミング学習は、どのように進めていくのが良いでしょうか?

人それぞれですが、プログラミング学習においては、完璧を目指そうとしないことが重要です。完璧に覚えようとしても量が多すぎるので。覚えるのではなく、理解して、自分でググれる力をつけましょう。私も、Ruby on Rails のことについては、3割程度しか分かっていないです(笑)。また、実際に業務でコードを書いている時間は3分の1程度で、あとは「どのように設計するか」「どのようなコードを書けばいいか」など、考えている時間の方が長いです!
オリジナルサービスについて

最終課題のオリジナルサービスについて、まだ何を作ろうか具体的に決めていないんですが…

自分の趣味と組み合わせると良いと思います。例えば、以前担当していた受講生は、バンドをやっていて、バンド好きのマッチングアプリを作ったりしていました。それから、双子の子をもつ親の掲示板という、とてもニッチなサービスを作った人もいました!

私は野球全般が好きなので、それを活かして何か作ってみたいですね!

良いですね!
例えば、都内の野球練習場が開いているかを確認・予約できるサービスを作ってみるというのもいいかもしれません。これからAPIの学習をすると思いますが、クローラというサービスも使うことができます。ただ、クローラの仕組みを学ぶのに1ヶ月くらいかかるので、時間的に厳しいと思います。
テックアカデミーのメンタリング第2回目を終えて|まとめ
ここまで、テックアカデミー(Webアプリケーションコース)のメンタリング2回目の内容について書いてきました。
今回は、あまりコードに関する質問はせず、学習の進め方やオリジナルサービスに関しての内容となりました。
次回は第3回目です!
テックアカデミーのWebアプリケーションコースを終えての記事も書いているので、よかったら見てみてください!

コメント
本当にありがとうございました()how to start an online pharmacy business