Upgrade to Pro — share decks privately, control downloads, hide ads and more …

プロを目指すRailsエンジニアのための公開コードレビュー / #railsdm

プロを目指すRailsエンジニアのための公開コードレビュー / #railsdm

Rails Developers Meetup #4の発表資料です。

全員分のコードレビュー動画はこちらにあります。

【前編】全部見ます!プロを目指すRailsエンジニアのための公開コードレビュー #railsdm
https://youtu.be/xZk4f4PPUhU

【後編】全部見ます!プロを目指すRailsエンジニアのための公開コードレビュー #railsdm
https://youtu.be/yDxg0sXHXOo

勉強会の告知ページはこちらです。

Rails Developers Meetup #4 リモート会場 - connpass
https://rails-developers-meetup.connpass.com/event/63374/

Junichi Ito

August 24, 2017
Tweet

More Decks by Junichi Ito

Other Decks in Programming

Transcript

  1. ABOUT ME ҏ౻३Ұ ➤ େࡕ෎๛தࢢग़਎ ➤ ฌݿݝ੢࿬ࢢࡏॅ ➤ גࣜձࣾιχοΫΨʔσϯ ➤

    3BJMTϓϩάϥϚ ➤ ϦϞʔτϫʔΧʔ ➤ Ϊλʔ޷͖ ➤ ࠓ೔.BUFVT"TBUP؍͖ͯͨʂ
  2. ٕज़ॻ͕ग़·͢ʂ ʮϓϩΛ໨ࢦ͢ਓͷͨΊͷ3VCZೖ໳ʯ ➤ ҏ౻३Ұஶ ➤ ೥݄ൃച ➤ #มܕ൑ϖʔδ ➤ ग़൛ࣾɿٕज़ධ࿦ࣾ

    ˞্ه಺༰͸ݱ࣌఺ͷ༧ఆͰ͢ɻ ͲΜͳຊͳͷʁ ➤ 2JJUB౳Ͱఆධͷ͋Δஸೡͳղઆ ➤ 5%%ˍνϡʔτϦΞϧܗࣜͷྫ୊ ➤ ։ൃͷݱ৔Ͱ໾ཱͭ஌͕ࣝຬࡌ ϓϩΛ໨ࢦ͢ਓͷͨΊͷ 3VCZೖ໳ ҏ౻३Ұஶ ٕज़ධ࿦ࣾ
  3. ຊ೔ͷΞδΣϯμ ➤ ެ։ίʔυϨϏϡʔɾͦͷ̍ ➤ ެ։ίʔυϨϏϡʔɾͦͷ̎ ➤ ग़୊ऀͷղ౴ྫ ➤ ؾʹͳͬͨϙΠϯτ͋Ε͜Ε ➤

    ·ͱΊ ➤ ࣭ٙԠ౴ʢ͕࣌ؒ͋Ε͹ʣ ➤ ࣭໰΍͝ҙݟ͸SBJMTENΛ෇͚ͯπΠʔτ ➤ ΈΜͳͰʮྑ͍ίʔυʯʹ͍ͭͯҰॹʹߟ͑ͯΈ·͠ΐ͏ʂ
  4. ࢖༻ࡁΈͷ੾ූΛද͢ίʔυ 1. OJMͰͳ͚Ε͹ਅ ➤ redirect_to ʙ if @ticket.exited_gate 2. QSFTFOU

    Ͱʮʙ͕ଘࡏ͍ͯ͠Ε͹ʯΛ໌ࣔ ➤ redirect_to ʙ if @ticket.exited_gate.present? 3. ΠϯελϯεϝιουΛ࡞ͬͯந৅Խ ➤ redirect_to ʙ if @ticket.used? ➤ ύλʔϯ͕̏ಡΈखʹҰ൪΍͍͞͠
  5. ʁͰऴΘΔϝιουͷ੹຿Λߟ͑Δ ➤ before_action :ticket_used? ➤ validate :can_exit? ➤ ྫɿIUUQTHJUIVCDPN+VOJDIJ*UPUSBJOUJDLFUSBJMTQVMM ➤

    ಛఆͷ৚݅ͰϦμΠϨΫτ͢Δʢ͍͍ͷʁʣ ➤ ಛఆͷ৚݅ͰΤϥʔϝοηʔδΛ௥Ճ͢Δʢ͍͍ͷʁʣ ➤ ʁͰऴΘΔϝιου͸ਅِ஋Λฦ͚ͩ͢ʹ͢Δ ➤ ͦΕҎ֎ͷ෭࡞༻͸࣋ͨͤͳ͍ ➤ ྫ֎ɿ"DUJWF3FDPSEͷWBMJE ϝιου
  6. redirect_to + return ͷ return ͍ͬͯΔʁ ➤ ͨͩ͠ɺ࣍ͷΑ͏ͳίʔυͳΒSFUVSO͸ඞཁ def abort_used_ticket

    if @ticket.used? rediect_to root_path # Avoid DoubleRenderError return end redirect_to foo_path end SFEJSFDU@UP΍SFOEFSΛෳ਺ճݺͿͱ%PVCMF3FOEFS&SSPS
  7. ·ͱΊ ➤ ϝιουͷ੹຿Λߟ͑Α͏ ➤ ੹຿΍෭࡞༻͸Ͱ͖Δ͚ͩগͳ͘ ➤ ͍͍ײ͡ʹந৅Խ͠Α͏ ➤ ʮҙਤΘ͔ΔϩδοΫʯΑΓ΋ʮҙਤ͕෼͔Δ໊લʯΛ ➤

    ෆཁͳίϯςΩετΛͳͦ͘͏ ➤ ࡞ͬͨਓ͚͕ͩΘ͔ΔʮӅΕͨҙຯʯ͸ഉআ͢Δ ➤ 3BJMTͷػೳΛ࢖͍͜ͳͦ͏ ➤ γϯϓϧͰෆ۩߹ͷͳ͍ίʔυΛ໨ࢦͦ͏ ➤ ͔ͩΒɺ͓ޓ͍ʹίʔυϨϏϡʔ͓͋͠͏ʂʂ