Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

解説動画の見所の記事を作る #106

Merged
merged 1 commit into from
Jul 10, 2019

Conversation

Yuppymam
Copy link
Contributor

@Yuppymam Yuppymam commented Jul 2, 2019

公式ブログ用に、note と少しだけ文章を変えた部分があります✏️

@yasulab yasulab temporarily deployed to yasslab-jp-pr-106 July 2, 2019 02:35 Inactive
@yasulab
Copy link
Member

yasulab commented Jul 2, 2019

@Yuppymam 前編・中編・後編に分けないで、全部マージしちゃうというのはどうでしょう...? 🤔💭 (それでもRailsチュートリアル1章分の長さよりは短いですし、マージすれば「ページ内検索 == 全文検索」になって便利そう 😸✨)

@Yuppymam
Copy link
Contributor Author

Yuppymam commented Jul 2, 2019

長くても、それもチュートリアルっぽくて良いかもしれないですね😆
では、中編・後編もここへ追加してしまいます👌

@Yuppymam Yuppymam changed the title 解説動画の見所「前編」 解説動画の見所の記事を作る Jul 2, 2019
@yasulab
Copy link
Member

yasulab commented Jul 2, 2019

d( ̄  ̄)✨

@Yuppymam
Copy link
Contributor Author

Yuppymam commented Jul 9, 2019

@yasulab
全編まとめてみました😊
一度ご確認お願いします🙇‍♀️

気になった事

note と同じく一番下に法人プランのお知らせを載せるかどうか🔖

@Yuppymam
Copy link
Contributor Author

Yuppymam commented Jul 9, 2019

フルスクリーンショット重すぎて表示されませんでした😢

@yasulab
Copy link
Member

yasulab commented Jul 9, 2019

フルスクリーンショット重すぎて表示されませんでした😢

大丈夫です...!! 🙆 fetch して手元で確認しますね ;)

@yasulab yasulab self-requested a review July 9, 2019 02:39
Copy link
Member

@yasulab yasulab left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Yuppymam 古いファイルが残っているようなので、古いファイルを削除して、コミットを1つにまとめていただけると嬉しいです...!! (>人< )✨

cf. 📜 WIPでPRを出して後でsquashしよう - Qiita:Team

@Yuppymam Yuppymam force-pushed the highlight-of-tutolial-expository-video-1 branch from dcbcb58 to 8244fa8 Compare July 9, 2019 08:57
@Yuppymam
Copy link
Contributor Author

Yuppymam commented Jul 9, 2019

@yasulab 時間かかってしまいましたが、多分 commit 纏められたと思います🙇‍♀️
よろしくお願いします🎀

@yasulab
Copy link
Member

yasulab commented Jul 9, 2019

@Yuppymam コミットメッセージに「不要なファイルを削除」とありますが、実態としては削除は行われていないので、これは事実ではないですね 😉

また、「解説動画の見所」「解説動画ハイライト記事」というのも、コミットメッセージから何を変更したのかが分からないので、次の記事を読んでコミットメッセージを直していただけると良さそうです (>人< )✨

cf. 📜 コミットメッセージのお作法 - Qiita:Team

@Yuppymam
Copy link
Contributor Author

Yuppymam commented Jul 9, 2019

了解しました(•̀ᴗ•́)و ̑̑✨
ご指摘ありがとうございます😆!!
後ほど変更します💪

@Yuppymam Yuppymam force-pushed the highlight-of-tutolial-expository-video-1 branch 2 times, most recently from 367aa22 to bd20bf0 Compare July 9, 2019 13:26
@Yuppymam
Copy link
Contributor Author

Yuppymam commented Jul 9, 2019

ご確認よろしくお願いします🙇‍♀️
Git 難しい...😭

author: Yuppyhappytoyou
categories: [blog]
tags: [Railsチュートリアル]
permalink: /ja/posts/highlight-of-tutolial-expository-video-1
Copy link
Member

@yasulab yasulab Jul 9, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

シンプルに highlight-of-railstutorial-screencast でいかがでしょう...? 😸✨ cf. https://railstutorial.jp/#screencast

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

あ、パーマリンク変更するのすっかり忘れてました😱
私の方で変更しますか?😊

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

お願いします...!! (>人< )✨

---

Railsチュートリアル解説動画は、各章合わせて約36時間に及ぶ大ボリュームとなっており、1周終わってこれから2周目、3周目という方や、他言語から学ばれてきた方にも役立つ情報がたくさんあります。
動画は授業形式になっており、何度も繰り返し見ることが可能です。テキスト版の予習・復習に、自分好みの使い方で理解を深めるのにきっと役立つはずです。
Copy link
Member

@yasulab yasulab Jul 9, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

改行は段落を作るときのみで、それ以外の改行はすべて削除していただけると助かります...!! (>人< )✨

cf. 例2「段落」で情報を整理する - Qiita:Team

@Yuppymam
Copy link
Contributor Author

@yasulab パーマリンクを変更し、いらない改行を削除しました😊
また commit をまとめてしまった方がいいですか?

@yasulab
Copy link
Member

yasulab commented Jul 10, 2019

また commit をまとめてしまった方がいいですか?

@Yuppymam はい!😸 commit も1コミットに集約してもらえると助かります...!! (>人< )✨

有名なGitHubなどの説明もあります。

その流れで「Heroku」についての解説もあるので、本番環境についてスムーズに理解できるようになっています。(本番環境にあげるための「Git」なんですね...!)
有名なGitHubなどの説明もあります。その流れで「Heroku」についての解説もあるので、本番環境についてスムーズに理解できるようになっています。(本番環境にあげるための「Git」なんですね...!)
Copy link
Member

@yasulab yasulab Jul 10, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

100~101行目の改行も ✂️ でお願いします (>人< )✨

![Railsにおける処理の流れ](https://i.gyazo.com/c8b8163cdc2b8a839fbd8c3fc262e179.png)

こんな感じで、全体の流れをスライド付きで説明してくれます。この一通りの流れをrailsチュートリアルで少しずつやっていくので、初めての方はこの全てを今の段階では理解していなくても大丈夫です。
**MVCの全体像を理解したい**方や、**Railsについてざっと復習したい**方におすすめです。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

110〜111行目の改行も ✂️ でお願いします (>人< )✨

![Rubyの特徴](https://i.gyazo.com/38e3f15e269ca92d0b6d42e36b2d9745.png)

安川さんの説明だとコードが「擬人化」されていて面白いので、テキストだけだと眠くなってしまいそうな話でも頭にすっと入ってきます。
Pythonとの特徴の違いの話も参考になりますよ。Ruby は人間に寄り添った自由な言語だなと感じました。更に深い説明があるのが **「第4章 後編」**です。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

133〜134行目の改行も ✂️ でお願いします (>人< )✨

![パスワードとハッシュ関数](https://i.gyazo.com/593ef9b8f5166dbc99a63966cbad9efc.png)

パスワードの扱い方のお作法も学べます。便利なものがたくさんある Rails 凄いですね。
ここでは、**「正規表現」**にも触れられます。初めての方には難しく感じられる部分だと思いますが、動画を見ながらなんとなくでも理解出来ると嬉しいですね。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

163〜164行目の改行も ✂️ でお願いします (>人< )✨

![underfined_method_error](https://i.gyazo.com/2697e4ffc85f3b0cc18f1d1980c3e907.png)

解説動画内では、スムーズにエラーなくすんなり進んでいくだけ、という訳ではありません。実際にエラー画面が出てきて、そこから安川さんが解決していくのを見ていくのが結構勉強になります。
ここでは、Helper がうまく読み込まれていなかったので、それを解決しながらの実装です。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

216〜217行目の改行も ✂️ でお願いします (>人< )✨

![current_userメソッド解説](https://i.gyazo.com/f7d496504ce4c5bdb33b696043fdd817.png)

これは先ほど上で紹介した[Ruby「&&」とは?](#rubyとは)を知っているとより分かりやすいと思うので、そちらと合わせて覗いてみるといいかと思います。
こういう記法を取得できると、**コンピュータに無駄な処理をさせない**、一歩進んだプログラミングができそうですね。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

244〜245行目の改行も ✂️ でお願いします (>人< )✨

![raiseの使い方](https://i.gyazo.com/33acb1b7b80336cc27b332e4c4a34137.png)

🔼raise を外すとどうなるのか...?を、具体的にどうやって使うのか分かりやすく解説されています。
よく話を聞いていくと raise を使わなくても検知してくれる便利なサービスもある...?!そういった話も勉強になると思います。テスト網羅率についての話も興味深いです。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

310〜311行目の改行も ✂️ でお願いします (>人< )✨

![_patchメソッド](https://i.gyazo.com/1e26e0892a4d028220491a9ee34b3017.png)

`patch` メソッドや、`delete` メソッドは実は偽装されていた...!?という事実が、HTTPリクエストの歴史から説明されているので、分かると楽しいところだと思います。
Web の歴史に興味が湧いてきたら、更に自分で調べてみると楽しそうですね😁ブラウザの歴史なども調べてみると面白そうです。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

339〜340行目の改行も ✂️ でお願いします (>人< )✨

![リファクタリング解説](https://i.gyazo.com/a8b900c5d72cf6dbbe293915b52a5194.png)

2段階のリファクタリングを、順序立てて解説してくれるので分かりやすいです。
Rails では「デフォルト値」を理解するのがとても大切です。**コードがシンプルになればなるほど、その裏ではどういう動きがあるのかを理解する必要がある**ので、ぜひこの解説を聞いて理解を深めてもらえればと思います。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

391〜392行目の改行も ✂️ でお願いします (>人< )✨

![sendメソッド](https://i.gyazo.com/2caeed158516b893ff291b7ce8e96219.png)

そこで、Ruby の「send」メソッドの紹介です。文字列を使えるようになると、うまくリファクタリングしながらDRYに出来そうです。
Railsチュートリアル内ではうまく実装できるように設計されていたけど、実際に一から開発してこの技を使えるのは凄い事だぞ、という解説も面白いです。**設計は大事です!**
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

460〜461行目の改行も ✂️ でお願いします (>人< )✨

スライド付きで説明されています。

また、 **「12章 後編 9. まとめと質問コーナー 」**でも質問者さんから assigns メソッドについての質問があり、どういう場合に使用するのか?といった解説が聞けます。
どちらも短い時間で聞けるので、知っていると便利な assigns、気になる方はぜひ覗いてみてください。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

476〜477行目の改行も ✂️ でお願いします (>人< )✨

## beforeフィルターでリファクタリング

12章のパスワードの再設定を実装する大事なコードの部分なのですが、コピペだけで進めていたら絶対に理解できないところなので、しっかりと学習するべきところです。
**「12章 後編 4. パスワードの更新〜 5. before_filter のもう一つの使い方」**では、テキスト版では触れられていない解説が盛りだくさんです。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

482〜483行目の改行も ✂️ でお願いします (>人< )✨

![一見わかりづらいリファクタリング](https://i.gyazo.com/e2a1e98c05affff569a294e0b612e3ce.png)

🔼edit アクションは空なのに editフォームを見ると`@user`が宣言されている!これは分かりづらいかも...の場面。
DRYに書くのはもちろん大事だけど、分かりづらくなるなら本末転倒かもしれない...と、色々と考えさせられる部分でした。興味深い内容なので、オススメの箇所です。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

491〜492行目の改行も ✂️ でお願いします (>人< )✨

<img src="https://i.gyazo.com/abfa5cad33b143989477899b22e01359.png" alt="Micropostデータモデル">
</div>
🔼表を見て、この通りにマイグレーションファイルを作成していけばいいのは分かる...。でも、どうやってカラムの種類を作るのか決めているんだろう?🤔
テキスト版では「型」の説明に留まっていますが、解説動画 **「13章 前編 1. Micropostの実装の進め方 」**ではモック画面を見ながら、どんな風に追加するカラムを決めていくのか見れるようになっています。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

528〜529行目の改行も ✂️ でお願いします (>人< )✨

## Ruby「->」この矢印は何だ?

13章のマイクロポストを特定の順序で取得したい!の場面です。
`default_scope` というものを使って DB さんにワガママを聞いてもらうところはテキスト版の説明でも分かりやすいと思いますが、「->」という記号について何だか難しい説明がありますね🤔
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

539〜540行目の改行も ✂️ でお願いします (>人< )✨

![redirect_to request.referrer](https://i.gyazo.com/8e7ea732686531c689b4835a15e84813.png)

🔼一つ前のページには、何パターンあるか?の場面。
これを覚えると便利そうですね。 `request.referrer` にまつわる[ちょっと面白い記事](https://qiita.com/syshun/items/0d3436e32ad6d39e206d)も発見したので載せておきます。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

599〜600行目の改行も ✂️ でお願いします (>人< )✨

## accept でフロント側にもバリデーション

**「13章 後編 10. 画像の加工や検証 」**では、画像を投稿する際にフロント側でもバリデーションをかけてあげる方法について学べます。
ここの場面は実際に動画内のファイルアップローダーを見ながら進められているので、テキストだけの時よりも体感的に学べます。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

605〜606行目の改行も ✂️ でお願いします (>人< )✨

![fat コントローラ問題](https://i.gyazo.com/c715d415e6afd27afb7485d3c87c54ed.png)

**「14章 前編 13. メソッドを定義する場所 」**では「fat コントローラ問題」というものについて解説があります。
このメソッドは、モデルに書けないかな?と考えてあげることで、コントローラの肥大化を防いであげようという話です。これもDRYに書くための大事な思想なので勉強になります。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

647〜648行目の改行も ✂️ でお願いします (>人< )✨

🔼まずは、インスタンス変数の名前を揃えてあげるんですね。`@users` の中身はアクションに合わせて変わっています。

今までは「**同じようなコードはDRYに反するから書かない**ように!」と習ってきているので、今回の場合ほぼ同じコードだけど大丈夫?と感じますが、二つのビューを用意してそれぞれに同じようなパーシャルを付けてあげて...と考えると明らかにこちらの方がDRYです。
チュートリアル内ではこのような実装方法もできるよという紹介にすぎず、実装方法はアイデア次第で色んなことができるので「この実装方法の方がクールだ」というのを見つけてみるのも面白そうですね。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

680〜681行目は段落に分けてしまった方が良さそう? 🤔💭

![2通りのFollow・Unfollowボタンの実装方法](https://i.gyazo.com/ea72297dc80f47665ab7e50896a1f7d0.png)

応用編として、**Ajax** を使った実装方法を紹介してくれているのが **「14章 後編 12. Followボタン ajax 実装編 」**です。
基礎編は、ボタンを押すと全HTMLが再読み込みされて、タブのところがクルクルするバージョンです。そうではなく、変更させたい部分だけを JavaScript の力を使ってさっと変えてあげるという技が Ajax です。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

690〜691行目の改行も ✂️ でお願いします (>人< )✨

![Followボタンを押して変わる部分](https://i.gyazo.com/af43b3c0f0f2e4a4f367fa8809927fd1.png)

🔼 Follow ボタンを押して、変わる部分は実は2箇所だけなんですね。( Follow ボタンが Unfollow に、followers の数字が1増える )
その2箇所以外の HTML をわざわざ読み込み直す必要はないかも?というところからの解説です。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

695〜696行目の改行も ✂️ でお願いします (>人< )✨

その2箇所以外の HTML をわざわざ読み込み直す必要はないかも?というところからの解説です。

ここでは **「JavaScript は使う場所を吟味し、多用するべからず」**といった、テキスト版では触れられていない話が聞けます。
一見、便利そうで色んなところで使いたくなる Ajax だけど、多用することで起こりうる様々な問題について考えた上でやらなくてはいけないという事が分かり、興味深い内容になっています。Ajax の実装方法も分かりやすく解説されてるので、詳しく知りたい方はぜひ聞いてみてください。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

698〜699行目の改行も ✂️ でお願いします (>人< )✨

## あとがき

この解説動画では、テキスト版だけでは理解しづらい部分を丁寧に解説してもらえるだけではなく、チュートリアルの内容以外の様々なことを学ぶ事ができます。現場により近い具体的な説明を聞くことで、ぐっと知識が深まると思います。これからプログラミングを学んでいく方にはもちろん、更に知識の定着をはかってみたい方にもお勧めできる動画です。きっと見て下さった皆さんに、それぞれ色んな気付きがあると思います😊
この解説動画が、皆さんの学習に役立てれば嬉しく思います。
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

741〜742行目は段落として分けてしまっても良さそう? 🤔💭

@yasulab
Copy link
Member

yasulab commented Jul 10, 2019

@Yuppymam 具体的な修正箇所にコメント入れてみました! ご参考にしていただければ....!! 😉

@yasulab yasulab closed this Jul 10, 2019
@yasulab yasulab reopened this Jul 10, 2019
@yasulab yasulab temporarily deployed to yasslab-jp-pr-106 July 10, 2019 02:53 Inactive
@yasulab
Copy link
Member

yasulab commented Jul 10, 2019

あ、間違って Close しちゃいました.... >< 💦 (ので Re-open しました ✅ )

@Yuppymam
Copy link
Contributor Author

レビューありがとうございます!!😊
直しますね💪✨

@Yuppymam Yuppymam force-pushed the highlight-of-tutolial-expository-video-1 branch from 66273bb to 2bf0558 Compare July 10, 2019 03:33
@yasulab yasulab temporarily deployed to yasslab-jp-pr-106 July 10, 2019 03:33 Inactive
@yasulab
Copy link
Member

yasulab commented Jul 10, 2019

良さそう...!! 記事執筆ありがとうございます (>人< )✨ マージしますね 🔧 💨 💖

@yasulab yasulab merged commit 094b68b into master Jul 10, 2019
@yasulab yasulab deleted the highlight-of-tutolial-expository-video-1 branch July 10, 2019 09:43
@Yuppymam Yuppymam restored the highlight-of-tutolial-expository-video-1 branch July 10, 2019 16:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants