Railsチュートリアルの歩き方 (第6版) / railstutorial-6e-ch00

Railsチュートリアルの歩き方 (第6版) / railstutorial-6e-ch00

Railsチュートリアルの歩き方について説明したスライド資料です。
https://railstutorial.jp/

サービス導入に関するご相談などありましたら https://yasslab.jp からお気軽にご連絡ください。

🎓Railsチュートリアル: https://railstutorial.jp
  解説動画: https://railstutorial.jp/screencast
  質問対応: https://railstutorial.jp/#learn-by
  電子書籍: https://railstutorial.jp/#ebook
  法人プラン: https://railstutorial.jp/business
  研修プラン: https://railstutorial.jp/training
  協業・提携: https://railstutorial.jp/partner

📕Railsガイド: https://railsguides.jp
  Proプラン: https://railsguides.jp/pro
  Teamプラン: https://railsguides.jp/team
  GitHub: https://github.com/yasslab/railsguides.jp

📜関連スライド
  創りながら学ぶ https://speakerdeck.com/yasslab/learning-by-creating
  動画×反転学習 https://speakerdeck.com/yasslab/aws-award-at-fukuoka-ruby-2019

🐣Twitter: https://twitter.com/yasslab
📺YouTube: https://youtube.com/c/YassLab
👥Facebook: https://facebook.com/yasslab.jp/

Copyright ©︎ Yasslab 株式会社 https://yasslab.jp

08d84a320a8128f6e0b00b27c201530f?s=128

YassLab 株式会社

July 11, 2020
Tweet

Transcript

  1. 3BJMTνϡʔτϦΞϧͷา͖ํ

  2. RailsνϡʔτϦΞϧ ※ΠϝʔδͰ͢ 60ඵͰ෼͔Δ

  3. ઍཬͷಓ΋Ұา͔Β ɹ725ϖʔδ໨

  4. ୈ1ষʮҙ֎ʹ௕͍… ʯ

  5. ୈ6ষʮϞσϧΑ͘ϫΧϥφΠ ʯ

  6. ୈ14ষʮ·ͬͨ͘ϫΧϥφΠ… ʯ ୈ14ষ

  7. ͦͯ͠…׬૸!

  8. ͳΔ΄ͲRails! ✨

  9. ͦͯ͠͞ΒͳΔߴΈ΁…

  10. ಺༰ͱߏ੒

  11. Rails Tutorialɹ ӳޠ൛: https://www.railstutorial.org/ ɾݪஶ͸ӳޠ ɾ໿700ϖʔδ ɾϓϩμΫτ։ൃ͕ςʔϚ ɹ SNS Λθϩ͔Βઃܭ

    Test ΋࢖ͬͯ඼࣭޲্ Git Ͱόʔδϣϯ؅ཧ Heroku ʹσϓϩΠ ɾසൟͳΞοϓσʔτ ɾ΢Σϒ൛͸ແྉ!!
  12. ߋ৽ ܧଓత຋༁/૊൛γεςϜ Λ࢖੍ͬͯ࡞ ※ ࢀߟ: RailsνϡʔτϦΞϧΛࢧ͑Δܧଓత૊൛γεςϜ https://speakerdeck.com/yasulab/continuous-integration-for-ebook ※ ܧଓతʹ

  13. Ͱ͖ͨ΋ͷ: https://railstutorial.jp/

  14. ໨࣍Ͱશମ૾Λ೺ѲͰ͖·͢

  15. ੒Ռ෺: https://bit.ly/sample_app_demo WebαʔϏεΛ࡞Γͳ͕ΒֶͿ

  16. RailsνϡʔτϦΞϧ ׬૸ऀͷ։ൃࣄྫ

  17. ։ൃࣄྫ: Nomalog (ΧϑΣڞ༗αʔϏε)

  18. ։ൃࣄྫ: SharePla (ܭըڞ༗αʔϏε)

  19. ։ൃࣄྫ: ΤΫϝϧϯ (ϝʔϧ഑৴αʔϏε)

  20. ։ൃࣄྫ: TOPSIC (εΩϧ൑ఆαʔϏε)

  21. ࣾձ͔Βͷ൓ڹ

  22. ݄ؒͷಡऀ਺ = 2.2+ສ

  23. google.co.jp Ͱ ‘Rails’ ͱ ݕࡧ͢Δͱ1ϖʔδ໨ʹදࣔ

  24. ڭࡐʰRailsνϡʔτϦΞϧʱͱղઆಈըɾ࣭໰ରԠͳͲ ʰֶͼʱΛࢧ͑ΔαʔϏε ʰ๏ਓϓϥϯʱɹɹʰݚमϓϥϯʱɹɹʰڠۀɾఏܞʱ

  25. େֶɾେֶӃɾاۀɾεΫʔϧͱ࿈ܞ IUUQTSBJMTUVUPSJBMKQQBSUOFST

  26. ڭࡐஜ೾େֶ ླྀٿେֶ "**5 IUUQTZBTTMBCKQKBOFXTVOJWPGSZVLZVTXJUISBJMTUVUPSJBM

  27. ࣾһݚमϚωʔϑΥϫʔυ IUUQTZBTTMBCKQKBQPTUTMFBSOJOHCZNBLJOH

  28. lʮࣗ෼ͷϓϩμΫτ։ൃΛ௨ͯ͠ଟ͘ͷࢹ఺ΛಘΒΕͨʯ ʮࠓޙͷ։ൃ΍ۀ຿Ͱ΋׆͖ͯ͘Δʯz ࣾһݚमϝϯόʔζΩϟϦΞ IUUQTZBTTMBCKQKBOFXTSBJMTUVUPSJBMBUNFNCFSTDBSFFS

  29. ଞʹ΋

  30. ୊ࡐ: શࠃͷRubyίϛϡχςΟ

  31. ࢿ֨3BJMTٕज़ऀೝఆϒϩϯζࢼݧ

  32. ొஃ: RubyWorld Conference (2013೥ / 2015೥ / 2018೥)

  33. ड৆: ϑΫΦΧRubyେ৆ (ࠨ: 2014೥ ༏ल৆ | ӈ: 2019೥ AWS ৆)

  34. νϡʔτϦΞϧ ͷߋ৽ཤྺ

  35. ୈ̎൛ˠୈ̏൛

  36. ̒ͭͷվળ఺ • Cloud9 (Ϋϥ΢υ౷߹։ൃ؀ڥ) ͷಋೖ • ୈ8ষͷϩάΠϯػߏΛϞμϯͳ࣮૷ʹҰ৽ • ςετπʔϧΛRSpec͔Βminitestʹมߋ •

    ϝʔϧૹ৴Λղઆ͢Δষ͕৽ͨʹ௥Ճ • ϚΠΫϩϙετʹը૾౤ߘػೳΛ௥Ճ • ଞɺಠࣗόϦσʔγϣϯ΍ϝλϓϩͷಋೖͳͲ
  37. Cloud9Λ࢖ͬͯϒϥ΢βͰ։ൃ (OSඇґଘ)

  38. ୈ2൛ ୈ3൛ ϩάΠϯػߏͰ͸ Ұ࣌Ϟσϧʹ͢Δ͔ ӬଓϞσϧʹ͢Δ͔ Ϣʔβʔ͕બ΂Δ

  39. RSpec minitest ςετίʔυ͕ γϯϓϧʹͳΓ ཧղ͠΍͍͢ ※ ٯʹ RSpec ͳͲͷߴ౓ͳςετ͸ ֶशίετ͕ߴ͍ͷͰଞॻ੶ʹҠৡ

  40. ActionMailerΛ࢖ͬͨϝʔϧૹ৴Λղઆ

  41. ϚΠΫϩϙετʹը૾౤ߘػೳ͕௥Ճ

  42. ଞɺಠࣗόϦσʔγϣϯ΍ϝλϓϩͷಋೖͳͲ

  43. ଞɺಠࣗόϦσʔγϣϯ΍ϝλϓϩͷಋೖͳͲ ಈతσΟεύον: sendϝιουΛ࢖ͬͯ, ݺͼग़͢ ϝιουΛಈతʹมߋ͢Δϫβ. cf. Meta Programming Ruby, Paolo

    Perrotta
  44. ࢀߟୈ̎൛ͰΑ͘ݟ͔͚ͨྫ • ηοτΞοϓ(ୈ̍ষ)Ͱ࠳ં • Ruby/RailsͷηοτΞοϓ͕೉͍͠ orz • Git/GitHub/Heroku ͕͏·͘ઃఆͰ͖ͳ͍… •

    ςετ͕͏·͘ಈ͔ͳͯ͘࠳ં • ςετ͕ࢥͬͨΑ͏ʹಈ͔ͳ͍!! • σϓϩΠͨ͠ͷʹ͏·͘දࣔ͞Εͳ͍…orz => ్தͰ᪴͘ཁҼͷ΄ͱΜͲ͕ɺ؀ڥґଘͷ໰୊
  45. • ηοτΞοϓ(ୈ̍ষ)Ͱ࠳ં • Ruby/RailsͷηοτΞοϓ͕೉͍͠ orz • Git/GitHub/Heroku ͕͏·͘ઃఆͰ͖ͳ͍… • ςετ͕͏·͘ಈ͔ͳͯ͘࠳ં

    • ςετ͕ࢥͬͨΑ͏ʹಈ͔ͳ͍!! • σϓϩΠͨ͠ͷʹ͏·͘දࣔ͞Εͳ͍…orz => ్தͰ᪴͘ཁҼͷ΄ͱΜͲ͕ɺ؀ڥґଘͷ໰୊ ୈ3൛Ͱ͸ɼ͜͏͍ͬͨ໰୊͕େ෯ʹվળ! ࢀߟୈ̎൛ͰΑ͘ݟ͔͚ͨྫ
  46. ୈ̏൛ˠୈ̐൛

  47. • Rails 5 ܥʹ׬શରԠ (ղઆɺίʔυɺิ଍ͳͲ) • ೉͘͠ɺ௕͍ষΛ෼ׂ ϩάΠϯػߏ → جຊฤ

    (Session) / ൃలฤ (Cookies) ϝʔϧૹ৴ → ΞΧ΢ϯτ༗ޮԽ / ύεϫʔυ࠶ઃఆ • εΩοϓͰ͖ΔষΛ໌ࣔ: 9ষ, 11ষ, 12ষ͕লུՄ • ԋशΛࡉ͔͘഑ஔ: ಡΉ→ॻ͘→ಡΉ→ॻ͘ … • Learn Enough γϦʔζͱͷ౷߹ ̑ͭͷվળ఺
  48. Ruby on Rails 5 ܥʹରԠ!

  49. ೉ͯ͘͠௕͍ষΛ෼ׂͯ͠ɼεΩοϓՄೳʹ ୈ̏൛ ୈ̐൛ ϩάΠϯɺ ϩάΞ΢τ جຊతͳϩάΠϯػߏ (ୈ8ষ) ൃలతͳϩάΠϯػߏ (ୈ9ষ) ΞΧ΢ϯτ༗ޮԽͱ

    ύεϫʔυ࠶ઃఆ ΞΧ΢ϯτͷ༗ޮԽ (ୈ11ষ) ύεϫʔυͷ࠶ઃఆ (ୈ12ষ)
  50. ೉ͯ͘͠௕͍ষΛ෼ׂͯ͠ɼεΩοϓՄೳʹ ୈ̏൛ ୈ̐൛ ϩάΠϯɺ ϩάΞ΢τ جຊతͳϩάΠϯػߏ (ୈ8ষ) ൃలతͳϩάΠϯػߏ (ୈ9ষ) ΞΧ΢ϯτ༗ޮԽͱ

    ύεϫʔυ࠶ઃఆ ΞΧ΢ϯτͷ༗ޮԽ (ୈ11ষ) ύεϫʔυͷ࠶ઃఆ (ୈ12ষ) ☝εΩοϓՄೳ
  51. ԋशΛࡉ͔͘഑ஔ͠ɼಡΉˠॻ͘ΛεϜʔζʹ

  52. Learn Enough γϦʔζͱͷ౷߹ (ઈࢍ຋༁த!)

  53. • Rails 5 ܥΛ࢖ͬͯΈ͍ͨͷʹ Rails 4.2 ͔… ⤵ • ϩάΠϯɺϩάΞ΢τͷষ͕௕ͯ͘πϥ͍

    • ΞΧ΢ϯτ༗ޮԽ/ύεϫʔυ࠶ઃఆ͕೉͍͠ • ్தͷষΛεΩοϓͯ͠ಡΈਐΊ͍ͨ • ಡΜͰΔ͚ͩͩͱ๞͖ͯ͠·͏ͷͰ… >< • ॳ৺ऀͳͷͰલఏͱͳΔجૅ஌͔ࣝΒֶͼ͍ͨ. ࢀߟୈ̏൛ͰΑ͘ݟ͔͚ͨྫ
  54. • Rails 5 ܥΛ࢖ͬͯΈ͍ͨͷʹ Rails 4.2 ͔… ⤵ • ϩάΠϯɺϩάΞ΢τͷষ͕௕ͯ͘πϥ͍

    • ΞΧ΢ϯτ༗ޮԽ/ύεϫʔυ࠶ઃఆ͕೉͍͠ • ్தͷষΛεΩοϓͯ͠ಡΈਐΊ͍ͨ • ಡΜͰΔ͚ͩͩͱ๞͖ͯ͠·͏ͷͰ… >< • ॳ৺ऀͳͷͰલఏͱͳΔجૅ஌͔ࣝΒֶͼ͍ͨ. ୈ̐൛Ͱ͸ɼ͜͏͍ͬͨ໰୊Λվળ! ࢀߟୈ̏൛ͰΑ͘ݟ͔͚ͨྫ
  55. ୈ̐൛ˠୈ̒൛ (Rails ‘6’ ʹ߹Θͤͯୈ̒൛ʹͳΓ·ͨ͠)

  56. ̏ͭͷେ͖ͳվળ఺ • Rails 6 ܥʹ׬શରԠ (ηοτΞοϓɺίʔυղઆ) webpacker ରԠɺform_for → form_with

    ʹมߋͳͲ • BitBucket ͔Β GitHub ʹมߋ ηΩϡϦςΟΛߟྀ͢ΔͱɺPrivate ϦϙδτϦ ͕ແ೉ɻ2019೥ͷ GitHub ͷҰ෦ແྉԽʹ൐͍ɺ Rails νϡʔτϦΞϧ΋ GitHub Λ࠾༻ɻ • ը૾౤ߘ༻ͷ gem ʹඪ४ϥΠϒϥϦΛ࠾༻ CarrierWave → Rails ඪ४ͷ Active Storage ʹɻ fog → AWS ެࣜͷ AWS SDK S3 ʹɻ ̏ͭͷվળ఺
  57. Rails 6 ܥʹରԠɻ৽͍͠؀ڥͰֶͿ

  58. GitHub ʹҠߦɻ҆શ͔࣮ͭફతʹֶͿ

  59. ը૾౤ߘ΋ඪ४ϥΠϒϥϦɻ·ͣ͸جຊ͔Β

  60. • Rails 5 ܥ͡Όͳͯ͘ Rails 6 ܥʹ৮Γ͍ͨ • GitHub ΋҆৺ɾ҆શͳ؀ڥͰֶͼ͍ͨ

    • Rails ඪ४ͷ࠷৽ػೳΛ࢖ͬͯΈ͍ͨ ୈ̒൛Ͱ͸ɼ͜͏͍ͬͨ՝୊΋վળ! ୈ̐൛ͰΑ͘ݟ͔͚ͨྫ ✨
  61. ৄࡉ͸OPUFͰ IUUQTOPUFDPNZBTTMBC

  62. ୈ̒൛ɼ͓ͨΊ͋͠Ε

  63. ֶशΛࢧ͑Δ࢓૊Έ ~ ׬૸Λॿ͚ΔΞϨίϨ ~ One More Thing!

  64. 1. 1प໨͸ςετΛॻ͔ͳ͍ / ඞਢͷষͷΈ΍Δ
 
 
 2. Կ౓΋܁Γฦ͠΍Δ.
 
 


    3. ଞͷਓͱ৘ใڞ༗͠ͳ͕ΒਐΊΔ. RailsνϡʔτϦΞϧͷ̍प໨Ͱ͸ɼ Ruby/Rails΍ςετͷงғؾΛཧղͰ͖Ε͹े෼ɽ ෼͔Βͳ͍ίʔυ΍ԋश͸εΩοϓͯ͠, 2प໨΍3प໨ͰɼεΩοϓͨ͠Օॴͱ޲͖߹͏. ͍᪴ͨ࣌ʹॿ͚߹͑Δ஥͕͍ؒΔͱ৺ڧ͍. (଎͞ॏࢹͳΒ) ղઆಈը΍࣭໰ରԠͳͲ΋׆༻.
  65. https://objectclub.tumblr.com/post/73687093348/rails Կ౓΋΍Γ͍ͨRailsνϡʔτϦΞϧ - Φϒϩά

  66. https://github.com/yasslab/sample_apps ֤ষͷαϯϓϧίʔυू - GitHub

  67. RailsνϡʔτϦΞϧղઆಈը (38࣌ؒ) https://railstutorial.jp/screencast

  68. ݸਓ͚ͩͰͳ͘ ๏ਓ޲͚ʹ΋ɻ

  69. ࣾһݚम༻ʰ๏ਓϓϥϯʱ https://railstutorial.jp/business ʰͳΜͱͳ͘ʱ͔Βɺཧղͯ͠ਐΊΒΕΔνʔϜ΁

  70. https://railstutorial.jp/training ʰϓϩμΫτ։ൃº൓సֶशʱͰ1#-࣮ફݚम ΦϚΧηܥʰݚमϓϥϯʱ

  71. https://railstutorial.jp/partner ύʔτφʔ֤ࣾͱڠྗ͠ɺֶͼͷʰ৔ʱΛ૿΍͢ ࣄۀͰ׆༻ʰڠۀϓϥϯʱ

  72. ʰϓϩμΫτ։ൃʱ ΛֶΜͰҰาઌͷੈք΁

  73. RailsνϡʔτϦΞϧͷา͖ํ YassLab גࣜձࣾ Thanks! ɹ

  74. ఏڙ