僕がProgateのRailsを勧める理由 2020年4月12日
おはようございます。昨日西野亮廣エンタメ研究所のサロンメンバーとZoomしたいとつぶやいたところ、思いのほか反響があって、やっちゃった感が満載なkeep in touch ~「ふれる」を続ける~ 中嶋孝史です。
さて今回のテーマは
僕がProgateのRailsを勧める理由
です。
はじめに
今回かなり気合が入ってます。というのも今サイクリスト用のSNSを作ろうとしていて、それに伴ってそもそもProgateのRailsで習ったことをまとめていたら、楽しくなりすぎて18枚にも及ぶスライドを作ってしまったからです(笑)
今回はスライドの画像を使いながらProgateでRailsを勉強するとこんなことができるよっていうのが伝えられればいいなと思います。
Railsを勧める理由
まずはProgateの説明からしていきます。ご存じの方も多いと思いますが、Progateはオンラインプログラミング学習サービスで、月額980円で様々なプログラミング言語やそのフレームワーク(プログラミングのパッケージ)を学ぶことができます。
そのProgateの講義のうちの一つがRailsです。RailsはRuby on Railsの略でRubyというプログラミング言語のフレームワークでWebアプリケーション開発などができます。ProgateではTwitterのようなSNSサイトを作りながらその仕組みを学んでいきます。
実際に作るページとその機能です。かなりいっぱい作るので文字だらけで見づらいですね。次のページから各々のページの説明をしていきます。
まずはトップページとサービスの紹介ページです。サイトに訪れた時に一番最初に来るページで、ここから他のページ(新規登録ページやログインページ)に飛べます。ログイン後はアクセスする必要がないので、アクセスできないように制限します。
次は投稿一覧ページです。みんなが登校した内容を閲覧できるページで、投稿内容・投稿したユーザー名・ユーザーの画像が見れます。投稿はログインしているユーザーだけ閲覧可能にしたいので、ログアウト状態ではアクセスを制限します。
次に新規投稿ページと投稿編集ページです。どちらも投稿するテキストを保存する場所で、Twitterに合わせて1文字以上140文字以内の制限をかけています。編集時は、元々の投稿を残したままページに移り、いちいち元の投稿内容を確認しなくていいようにします。
次に投稿詳細ページです。投稿ごとの詳細(投稿ユーザー名・ユーザーの画像・投稿内容・投稿日時・いいねの数)が表示され、投稿したユーザーが閲覧する場合のみ編集・削除のリンクが表示されるように制限します。
次にユーザー一覧ページとユーザー編集ページです。ユーザー編集ページはそのユーザーのみしかアクセスできず、新規登録ではできなかった画像の追加が可能です。
次に新規登録ページです。ユーザー名・メールアドレス・パスワードで設定でき、パスワードはそのままデータベースに保存すると危険なので暗号化されて保存されます。
次にログインページです。メールアドレスとパスワードがデータベースに保存されてい内容と一致している場合ログインできるようになります。ただパスワードは暗号化されて保存されてますので入力したパスワードを暗号化して一致しているかを確認します。
最後にユーザー詳細ページといいねページです。ユーザー詳細ページではそのユーザーのみ編集リンクが表示され、いいねページではユーザーがいいねした投稿を閲覧できます。
続いてRails講座で身に付く能力について説明します。
まずは複数ページの表示方法やその流れの理解です。おそらくプログラミングを始めたばかりの人はHTMLやCSSを学習して1枚のページを作ることは出来ると思いますが、複数ページを作ったときにその流れや情報の受け渡しの仕方がわからないと思います。その方法を実際に作りながら学ぶことができます。
次にデータベースの追加やその活用です。今回は投稿内容を保存するPostテーブル・ユーザー内容を保存するUserテーブル・いいねを保存するLikeテーブルの3つを使い機能を作っていきます。データベース自体使う機会が多いので使い方わからないよって方におすすめです。
次にログインユーザーの権限と投稿の制限です。このサービスに投稿された内容はログインした人しか閲覧できないようにするため、ログイン状態を見極めます。また入力欄が空欄だったりした場合にエラー文が出るように設定をします。
最後に一番重要なパスワードの取り扱いです。パスワードや個人情報などをそのまま保存しておくことは大変危険ですので、保存するときに暗号化します。この講義で、暗号化の方法や、ログイン時に一致確認をする方法を学べます。
さぁいかがでしたでしょうか?プログラミング学習を始めたけど何をしたらいいかわからないと思う人は多いと思います。そんな方々に是非ともRailsを学んでこんなこともできるんだって感動を味わっていただければいいなと思います。
それでは最後までご覧いただきありがとうございます。
明日からまた薄い内容になると思いますがぜひご覧いただければ幸いです。