はじめてのRuby 第4章 / Ruby Practice 04

Fd09da0d9751bb7875ef4ff7e6201860?s=47 muttan
October 25, 2016

はじめてのRuby 第4章 / Ruby Practice 04

Fd09da0d9751bb7875ef4ff7e6201860?s=128

muttan

October 25, 2016
Tweet

Transcript

  1. ͨͷ͍͠3VCZୈষ

  2. ୈষΦϒδΣΫτͱม਺ɾఆ਺

  3. ΦϒδΣΫτ

  4. ΦϒδΣΫτ w 3VCZͰσʔλΛදݱ͢Δجຊతͳ୯Ґ w ʮ͢΂ͯ͸ΦϒδΣΫτʯͱݴͬͯ΋աݴͰ͸ ͳ͍੔਺Ͱ͑͞ΦϒδΣΫτͰ͋Δ w ྫ͑͹ ਺஋ΦϒδΣΫτ΍จࣈྻ ഑ྻΦϒδΣ

    ΫτFUDʜ ࣍εϥΠυͰओͳΦϒδΣΫτΛղ આʣ
  5. ΦϒδΣΫτ w ਺஋ΦϒδΣΫτ
 ΍ͳͲͷ਺஋Λද͢ΦϒδΣΫτෳૉ ਺ DNBUI ΍ߦྻ NBUSJY ͳͲΛද͢ΦϒδΣΫ τ΋͋Δ

    w จࣈྻΦϒδΣΫτ
 lBBBz lΑͬͱzͳͲͷจࣈͷฒͼ͔ΒͳΔΦϒ δΣΫτ
  6. ΦϒδΣΫτ w ഑ྻΦϒδΣΫτ ϋογϡΦϒδΣΫτ
 ෳ਺ͷσʔλΛ·ͱΊͯอ࣋͢ΔΦϒδΣΫτ w ਖ਼نදݱΦϒδΣΫτ
 ϚονϯάύλʔϯΛอ࣋͢ΔΦϒδΣΫτ w ࣌ࠁΦϒδΣΫτ


    ࣌ࠁʹؔ͢Δ৘ใʢ˓೥˓݄ͳͲʣΛอ࣋͢ΔΦϒ δΣΫτ
 
 ͳͲͳͲ
  7. Ϋϥε

  8. Ϋϥε w ஋ͱৼΔ෣͍Λఆٛͨ͠σʔλܕ w Ϋϥε͔Β࡞ΒΕ࣮ͨମΛΠϯελϯεͱ͍͏ w ਺஋Ͱ͋Ε͹/VNFSJDΫϥε จࣈྻ͸4USJOHΫ ϥεʹଐ͍ͯ͠Δ w

    ৄ͍͜͠ͱ͸Կճ͔͋ͱʹग़͖ͯ·͢
  9. ม਺

  10. ม਺ w 3VCZʹ͸ҎԼͷΑ͏ͳม਺͕͋Δ w ϩʔΧϧม਺
 ઌ಄͕ΞϧϑΝϕοτখจࣈPS@Ͱ࢝·Δ w άϩʔόϧม਺
 ઌ಄͕Ͱ࢝·Δ w

    Πϯελϯεม਺
 ઌ಄͕!Ͱ࢝·Δ ࣍ϖʔδʹଓ͘
  11. ม਺ w Ϋϥεม਺
 ઌ಄͕!!Ͱ࢝·Δ w ٙࣅม਺
 OJM USVF GBMTF TFMGͷΑ͏ͳ

    ಛఆͷ஋Λࣔͨ͢ Ίͷ༧໿͞Εͨม਺ͷ͜ͱಛఆͷ஋Λࣔͨ͢Ί ʹ࢖ΘΕΔͨΊ Ϣʔβʔ͕஋Λมߋ͢Δ͜ͱ͸ ग़དྷͳ͍
  12. ϩʔΧϧม਺ͱάϩʔόϧม਺ w ϩʔΧϧม਺͸ ม਺ͷείʔϓ͕ہॴతͳม਺ ม਺ͷӨڹൣғΛ͋Δఔ౓ݶఆ͢Δ͜ͱ͕Ͱ͖ Δ w άϩʔόϧม਺͸ϓϩάϥϜ಺ͷͲ͔͜ΒͰ΋ ࢀর͢Δ͜ͱ͕Ͱ͖Δม਺

  13. ϩʔΧϧม਺ͱάϩʔόϧม਺ TDPQFUFTUSC TVCSC w Y͸άϩʔόϧม਺Ͱ͋ΔͨΊ ଞͷϓϩάϥϜ Ͱมߋ͕ߦΘΕΔͱͦͷมߋ͕൓ө͞ΕΔ w Y͸ϩʔΧϧม਺Ͱ͋Δ͔Β ଞͷϑΝΠϧͰಉ

    ໊ͷม਺Λมߋͯ͠΋ӨڹΛड͚ͳ͍ 1TDPQFUFTUSC࣮ߦ
  14. ϩʔΧϧม਺ͱάϩʔόϧม਺ TDPQFUFTUSC TVCSC 
 Y άϩʔόϧม਺

  15. ϩʔΧϧม਺ͱάϩʔόϧม਺ TDPQFUFTUSC Y TVCSC 
 Y άϩʔόϧม਺

  16. ϩʔΧϧม਺ͱάϩʔόϧม਺ TDPQFUFTUSC Y TVCSC 
 Y άϩʔόϧม਺

  17. ϩʔΧϧม਺ͱάϩʔόϧม਺ TDPQFUFTUSC Y TVCSC Y Y άϩʔόϧม਺

  18. ϩʔΧϧม਺ͱάϩʔόϧม਺ TDPQFUFTUSC Y TVCSC Y Y άϩʔόϧม਺

  19. ϩʔΧϧม਺ͱάϩʔόϧม਺ TDPQFUFTUSC Y TVCSC Y Y άϩʔόϧม਺

  20. ϩʔΧϧม਺ͱάϩʔόϧม਺ w ྘৭͸ϩʔΧϧม਺ͷείʔϓʢม਺Λมߋͨ͠ Өڹ͸ ಉҰείʔϓ಺ͷΈʣ w άϩʔόϧม਺͸ͳΔ΂͘࢖Θͳ͍ํ਑Ͱϓϩ άϥϜΛॻ͘΄͏͕޷·͍͠

  21. ϩʔΧϧม਺ͱάϩʔόϧม਺ w ϩʔΧϧม਺͸࠷ॳͷ୅ೖΛߦͬͨͱ͖ʹॳظ Խ͞ΕΔ w ॳظԽ͞Ε͍ͯͳ͍ม਺ʹΞΫηε͢ΔͱΤϥʔ ͱͳΔ
 
 
 


    JSC NBJO TIJNB NPO /BNF&SSPSVOEFpOFEMPDBMWBSJBCMFPSNFUIPEATIJNBGPSNBJO0CKFDU  GSPN JSC 
  22. Πϯελϯεม਺ͱΫϥεม਺ ൪֎ฤ w Πϯελϯεม਺͸ੜ੒͞ΕͨΠϯελϯεͦΕ ͧΕ͕͍࣋ͬͯΔม਺ w Πϯελϯε಺ͳΒͲ͔͜ΒͰ΋ݺͼग़͢͜ͱ ͕Ͱ͖Δ w Ϋϥεม਺͸

    ͦͷΫϥε΍αϒΫϥε ͦΕΒ ͷΠϯελϯεͰڞ༗͞ΕΔάϩʔόϧม਺ w ৄ͘͠͸ճ໨Ͱ΍Γ·͢
  23. ϩʔΧϧม਺ͱάϩʔόϧม਺ !!HMPCBM !Y !!HMPCBM !Y !!HMPCBM !Y Πϯελϯε" Πϯελϯε# Πϯελϯε$

    !!HMPCBM !Y ͜͜Ͱɺ֤Πϯελϯε͸!Yͱ͍͏Πϯελϯεม਺Λ͍࣋ͬͯΔ !YͱݴͬͨΑ͏ͳૢ࡞͸ɺͦͷΠϯελϯεʹͷΈӨڹ͢Δ !!HMPCBM͸ͲͷΠϯελϯε͔Β΋ࢀরͰ͖ΔΫϥεม਺ ୅ೖૢ࡞΋͢΂ͯͷΠϯελϯεʹӨڹ͢Δ Πϯελϯε
  24. ఆ਺

  25. ఆ਺ w ͋Δಛఆͷ஋ʢྫ͑͹࠷େ஋ʣʹ໊લΛ͚ͭͨ ΋ͷ w ఆ਺͸ม਺ͱҧͬͯมߋෆՄೳͰ͋Δ w 3VCZͰ͸ઌ಄͕ΞϧϑΝϕοτʢେจࣈʣͰ͋ Δ΋ͷ͕ఆ਺ͱΈͳ͞Ε·͢ w

    ϝιουͷ಺෦Ͱ͸ఆ਺ఆٛෆՄೳ
  26. ఆ਺ w ࢖༻ྫ
 
 
 
 w ୅ೖͰ͖ͳ͍͸͕ͣ ࣮͸୅ೖͰ͖ͯ͠·͏
 ʢ΋ͪΖΜܯࠂ͸ग़ΔͷͰආ͚Δ΂͖ίʔυʣ

    w ؾʹͳͬͨਓ͸3VCZGSFF[FͰݕࡧ
  27. ༧໿ޠ

  28. ༧໿ޠ w 3VCZͷߏจʹ࢖ΘΕΔ୯ޠ΍ ༧Ί૊Έࠐ·Ε ͍ͯΔఆ਺ͳͲͷ໊લΛ༧໿ޠͱ͍͏ w ྫ͑͹
 FOE EFG CFHJO

    JG TVQFS CSFBL EPͳͲʜ w ͜ΕΒ͸ม਺໊ͱͯ͠࢖͑ͳ͍ͷͰ஫ҙ
  29. ଟॏ୅ೖ

  30. ଟॏ୅ೖ w ز͔ͭͷม਺ʹରͯ͠·ͱΊͯ୅ೖจΛॻ͖ͨ ͍৔߹ʹར༻͢Δ

  31. ଟॏ୅ೖ w ड͚औΔଆͷม਺ʹ͚ͭͩ Λ෇͚͓ͯ͘ͱ ༨ͬ ͨม਺ͷ஋͕഑ྻͱͯ֨͠ೲ͞ΕΔ
 
 
 w B

    C D<  >͕֨ೲ͞ΕΔ͜ͱʹ ͳΔ
  32. ଟॏ୅ೖ w ଟॏ୅ೖΛ࢖͏ͱ ม਺ͷத਎Λަ׵͢Δϓϩ άϥϜΛ؆ܿʹهड़͢Δ͜ͱ͕Ͱ͖Δ
 
 
 w UNQͷΑ͏ͳҰ࣌ม਺Λ࢖༻͢Δ͜ͱͳ͘ߦͰ ॻ͚ΔͷͰϋοϐʔ

  33. ଟॏ୅ೖ w ഑ྻͷཁૉΛऔΓग़ͯ͠ม਺ʹ୅ೖ͍ͨ͠৔߹ ΋࢖͏͜ͱ͕Ͱ͖Δ
 
 
 
 w B C

    D͕୅ೖ͞ΕΔ
  34. ࠓ೔ͷ·ͱΊ ˜͍Β͢ͱ΍

  35. ·ͱΊ w 3VCZͷੈքͰ͸ ͢΂͕ͯΦϒδΣΫτ w ม਺ͷछྨ͸ͭάϩʔόϧม਺͸ͳΔ΂͘࢖ ༻͠ͳ͍ํ਑Ͱ w ม਺໊ͷจࣈ໨Λେจࣈʹ͢Δͱఆ਺ͱͯ͠ѻ ΘΕΔ

    w ଟॏ୅ೖ͸
 ม਺ ม਺ ʜม਺O஋ ஋ ʜ ஋O

  36. ͱ͜ΖͰ

  37. ม਺ͷ໋໊نଇ w ීஈؾʹͤͣʹม਺໊Λ෇͚͍ͯΔ͔΋͠Εͳ ͍͕ ໋໊نଇʹ΋໊લ͕͍͍ͭͯ·͢ w HFUJOTUBODFΛද͢৔߹ ه๏ දهྫ 1BTDBM$BTF

    6QQFS$BNFM$BTF (FU*OTUBODF $BNFM$BTF -PXFS$BNFM$BTF HFU*OTUBODF TOBLFDBTF HFU@JOTUBODF
  38. 3VCZͰ͸ʜ w ม਺໊΍ϝιου໊ʹؔͯ͠͸TOBLFDBTF w Ϋϥε໊΍Ϟδϡʔϧ໊ʹؔͯ͠͸$BNFM$BTF Ͱ໋໊͞ΕΔ͜ͱ͕ଟ͍ ه๏ දهྫ 1BTDBM$BTF 6QQFS$BNFM$BTF

    (FU*OTUBODF $BNFM$BTF -PXFS$BNFM$BTF HFU*OTUBODF TOBLFDBTF HFU@JOTUBODF
  39. ม਺໊ʹ͍ͭͯ w ೉͍͠ӳ୯ޠΛબͿΑΓ ׂΓ੾ͬͯϩʔϚࣈදه Λ࠾༻ͨ͠΄͏͕෼͔Γ΍͍͢৔߹΋ʜ w ௕͍ม਺໊΋ྑ͘ͳ͍͕ ୹͍͕ͨ͘͠ނʹ୯ޠ Λলུ͗͢͠Δͷ΋/( w

    ׳ྫతʹೝΊΒΕ͍ͯΔུޠ NFTTBHFˠNTH  UFNQPSBSZˠUFNQͳͲ ͸͜ͷݶΓͰ͸ͳ͍ w ϓϩάϥϜ಺Ͱه๏Λ౷Ұ͢Δͱ(00%ʢͦΕͧ Εͷݴޠʹྲྀ೿͕͋Δ͸ͣʣ