はじめてのRuby 第10章 / Ruby Practice 10

Fd09da0d9751bb7875ef4ff7e6201860?s=47 muttan
November 15, 2016

はじめてのRuby 第10章 / Ruby Practice 10

Fd09da0d9751bb7875ef4ff7e6201860?s=128

muttan

November 15, 2016
Tweet

Transcript

  1. ͨͷ͍͠3VCZୈষ

  2. ͨͷ͍͠
 ٩ P?@? و

  3. 3VCZ

  4. ୈճ

  5. ୈষΤϥʔॲཧͱྫ֎

  6. Τϥʔॲཧʹ͍ͭͯ

  7. w ࣮ߦதʹൃੜ͢ΔΤϥʔ͸ҎԼͷ௨Γ ᶃ σʔλͷΤϥʔ
 σʔλϑΥʔϚοτ΍ߏ଄తͳΤϥʔ ᶄ γεςϜͷΤϥʔ
 ϋʔυσΟεΫো֐ͷΑ͏ͳϓϩάϥϜͰ͸Ͳ͏͠ Α͏΋ͳ͍ো֐ ᶅ

    ϓϩάϥϜͷϛε
 ະఆٛͷม਺΍ϝιου΁ͷΞΫηε Ҿ਺ͷΦϒ δΣΫτͷޡΓ ܭࢉϛεFUD Τϥʔॲཧʹ͍ͭͯ
  8. w ͜ͷΑ͏ͳΤϥʔΛ์ஔ͢Δͷ͸ྑ͘ͳ͍ͨΊ  ԿΒ͔ͷରࡦΛߦ͏ඞཁ͕͋Δ ✦ ݪҼΛऔΓআ͘ ✦ ແࢹͯ͠ଓߦ ✦ ΋͏Ұ౓ࢼ͢ɹͳͲͳͲʜ

    Τϥʔॲཧʹ͍ͭͯ
  9. w ҎԼͷೋ఺ʹؾΛ͚ͭͯϓϩάϥϜΛ࡞੒͢Δ ΂͖Ͱ͋Δ ᶃ ೖྗσʔλΛഁյ͠ͳ͍͔ ᶄ Τϥʔ಺༰ͱ ʢՄೳͰ͋Ε͹ʣݪҼΛ௨஌ ͢Δ͜ͱ͕Ͱ͖Δ͔ w

    3VCZʹ͸ΤϥʔॲཧΛαϙʔτ͢Δྫ֎ͱ͍͏ ࢓૊Έ͕උΘ͍ͬͯΔ Τϥʔॲཧʹ͍ͭͯ
  10. ྫ֎ॲཧ

  11. w ϓϩάϥϜͷ࣮ߦதʹΤϥʔ͕ى͖Δͱྫ֎͕ ౤͛ΒΕΔ w ྫ֎͕ൃੜͨ࣌͠͸ɺॲཧΛҰ࣌தஅ͠ྫ֎ॲ ཧΛ୳͢ ྫ֎ॲཧ

  12. w ྫ֎ॲཧͷ࢓૊Έ͕ແ͍ݴޠͰ͸ Τϥʔॲཧͷ هड़͕൥ࡶʹͳΔ ྫ֎ॲཧ JGB GBMTF Τϥʔॲཧ FOE JGC

    GBMTF Τϥʔॲཧ FOE JGD GBMTF Τϥʔॲཧ FOE CFHJO B  C  D  SFTDVF Τϥʔॲཧ FOE ྫ֎ॲཧͷ࢓૊Έ͕ͳ͍ݴޠ 3VCZ
  13. w ྫ֎ॲཧʹ͸ҎԼͷΑ͏ͳϝϦοτ͕͋Δ ᶃ ૢ࡞ͷ׬ྃΛҰͭҰͭ֬ೝ͠ͳͯ͘΋Τϥʔ ͕ࣗಈతʹݕग़͞ΕΔ ᶄ Τϥʔͷൃੜ৔ॴ΋ಉ࣌ʹใࠂ͞ΕΔͨΊσ όοά͠қ͍ ᶅ ਖ਼ৗͳॲཧͱΤϥʔॲཧΛ෼཭͔͚ͯ͠Δͨ

    Ί ݟ௨͕͠ྑ͘ͳΔ ྫ֎ॲཧ
  14. ྫ֎ॲཧͷॻ͖ํ

  15. w ྫ֎ॲཧ͸࣍ͷΑ͏ʹهड़͢Δ
 
 
 w 3VCZͰ͸ྫ֎ʹؔ͢Δ৘ใ΋ΦϒδΣΫτͱ͠ ͯѻΘΕΔ w SFTDVFઅ಺ͰSFUSZΛ༻͍Δͱ CFHJOҎԼͷॲ

    ཧΛ΋͏Ұ౓΍Γ௚͢͜ͱ͕Ͱ͖Δ ྫ֎ॲཧͷॻ͖ํ CFHJO ྫ֎Λൃੜͤ͞ΔՄೳੑͷ͋Δॲཧ SFTDVF ྫ֎͕ىͬͨ͜৔߹ͷॲཧ FOE
  16. w SFTDVFʹଓ͚ͯม਺Λॻ͘͜ͱͰ ྫ֎ΦϒδΣ ΫτΛड͚औΔ͜ͱ͕Ͱ͖Δ ྫ֎ॲཧͷॻ͖ํ CFHJO ྫ֎Λൃੜͤ͞ΔՄೳੑͷ͋Δॲཧ SFTDVFม਺ ྫ֎͕ىͬͨ͜৔߹ͷॲཧ FOE

  17. w ม਺໊Λ໌ࣔ͠ͳͯ͘΋ άϩʔόϧม਺ʹΤ ϥʔ৘ใ͕֨ೲ͞ΕΔ
 
 
 
 w ͨͩ͠ ໌ࣔతʹม਺Λએݴͨ͠΄͏͕Θ͔Γ΍

    ͘͢ͳΔͷͰॻ͜͏ ྫ֎ॲཧͷॻ͖ํ ม਺ ҙຯ  ࠷ޙʹൃੜͨ͠ྫ֎ͷΦϒδΣΫτ ! ࠷ޙʹൃੜͨ͠ྫ֎ͷҐஔʹؔ͢Δ৘ใ
  18. w ྫ֎ΦϒδΣΫτʹ͸ҎԼͷϝιου͕ఆٛ͞ Ε͍ͯΔ ྫ֎ॲཧͷॻ͖ํ ϝιου໊ ҙຯ DMBTT ྫ֎ͷछྨ NFTTBHF ྫ֎ͷϝοηʔδ

    CBDLUSBDF ྫ֎ͷൃੜͨ͠Ґஔʹؔ͢Δ৘ใ !ͱCBDLUSBDF͸ಉ͡
  19. ྫ֎ॲཧͷॻ͖ํ 'JMFΦʔϓϯͰΤϥʔ͕ىͬͨ͜৔߹ ྫ֎͕౤͛ΒΕͯSFTDVFઅʹೖΔ ΤϥʔΛใࠂͨ͠Β
 ࣍ͷϑΝΠϧͷॲཧ΁ҠΔ 1XDSC࣮ߦ

  20. ྫ֎ॲཧͷॻ͖ํ w ࣮ߦ݁Ռ SVCZXDSCGUYUGUYUGUYUGUYU GUYU GUYU /PTVDIpMFPSEJSFDUPSZ!SC@TZTPQFOGUYU GUYU UPUBM Τϥʔͷ৔߹͸ग़ྗͯ࣍͠ͷ

    ϑΝΠϧΛॲཧ
  21. ྫ֎ॲཧͷॻ͖ํ w SFTDVFઅ͕ͳ͍৔߹͸ݺͼग़͠ݩʹḪͬͯྫ֎ ॲཧΛߦ͏ EFGGPP
 'JMFPQFO lTIJNBNPOl  FOE EFGCBS

    GPP  FOE CFHJO CBS  SFTDVFFY QSJOUFYNFTTBHF laOz FOE CFHJO CBS GPP 'JMFPQFO SFTDVF ྫ֎ൃੜ
  22. ޙॲཧ

  23. w ྫ֎͕ىͬͯ͜΋ى͜Βͳͯ͘΋࣮ߦ͍ͨ͠ॲ ཧʢྫ͑͹։͍ͨϑΝΠϧΛΫϩʔζ͍ͨ͠ʣ͕ ͋Δͱ͖͸ FOTVSFઅʹޙॲཧΛهड़͢Δ ޙॲཧ CFHJO ྫ֎Λൃੜͤ͞ΔՄೳੑͷ͋Δॲཧ SFTDVFม਺ ྫ֎͕ىͬͨ͜৔߹ͷॲཧ

    FOTVSF ྫ֎ͷ༗ແʹ͔͔ΘΒ࣮ͣߦ͞ΕΔॲཧ FOE
  24. ޙॲཧ ॻ͖ࠐΈઌͷϑΝΠϧ͕։͚ͳ͔ͬͨ৔߹ Ͱ΋ TSD͸DMPTF͢Δඞཁ͕͋ΔͨΊ 
 FOTVSFઅʹTSDDMPTFΛهड़ͨ͠

  25. SFTDVFम০ࢠ

  26. w JGम০ࢠ΍VOMFTTम০ࢠͷΑ͏ͳॻ͖ํ΋Ͱ͖Δ
 w ͜Ε͸ҎԼͷจͱಉ༷Ͱ͋Δ
 SFTDVFम০ࢠ ࣜSFTDVFࣜ CFHJO ࣜ SFTDVF ࣜ

    FOE
  27. w ࢖༻ྫ
 
 w ίϚϯυϥΠϯ͔Β౉͞ΕͨҾ਺͕਺஋ྻ ྫ  ͷ৔߹͸ͦͷ஋ ෆਖ਼ͳ஋ ྫlBCDz

    ͷͱ͖ ͸Ληοτ͢Δ
 SFTDVFम০ࢠ
  28. ྫ֎ॲཧͷߏจͷิ଍

  29. w ϝιουͷॲཧશମΛCFHJOʙFOEͰׅΔΑ͏ͳ ৔߹͸ CFHJOʙFOEΛলུͰ͖Δ ྫ֎ॲཧͷߏจͷิ଍ EFGGPP ϝιουຊମ SFTDVFFY ॲཧ FOTVSF

    ޙॲཧ FOE
  30. ัଊ͢Δྫ֎Λࢦఆ͢Δ

  31. w ෳ਺ͷྫ֎͕ൃੜ͢ΔՄೳੑ͕͋Δ৔߹ ิ଍͢ Δྫ֎ΛSFTDVFઅʹࢦఆ͢Δ͜ͱͰॲཧΛ෼͚ Δ͜ͱ͕Ͱ͖Δ ัଊ͢Δྫ֎Λࢦఆ͢Δ CFHJO ྫ֎͕ൃੜ͢ΔՄೳੑͷ͋Δॲཧ SFTDVF&YDFQUJPO &YDFQUJPOม਺

    &YDFQUJPO &YDFQUJPOʹର͢Δॲཧ SFTDVF&YDFQUJPOม਺ &YDFQUJPOʹର͢Δॲཧ SFTDVF ͦΕҎ֎ͷྫ֎ʹର͢Δॲཧ FOE
  32. ྫ֎Ϋϥε

  33. w ͢΂ͯͷྫ֎͸ &YDFQUJPOΫϥεͷαϒΫϥε ʹͳ͓ͬͯΓ ΤϥʔͷछྨʹԠ༷ͨ͡ʑͳྫ֎ Λఆ͍ٛͯ͠Δʢ1ࢀরʣ w SFTDVFઅͰࢦఆͨ͠ྫ֎ͷछྨ͸ ྫ֎Ϋϥε ͷΫϥε໊Ͱ͋Δ

    w ࢦఆΛߦΘͳ͍৔߹͸ 4UBOEBSE&SSPSͱͦͷ αϒΫϥε͕ัଊ͞ΕΔʢॏཁʣ ྫ֎Ϋϥε
  34. w ࣗ෼Ͱྫ֎Λఆٛ͢Δ͜ͱ΋Ͱ͖Δ w 4UBOEBSE&SSPSΫϥεΛܧঝͨ͠ΫϥεΛ࡞੒ ͠ ߋʹͦΕΛܧঝ͢Δͷ͕ҰൠతͰ͋Δ w ࠷ޙʹσϞΛ͠·͢ ྫ֎Ϋϥε

  35. ྫ֎Λൃੜͤ͞Δ

  36. w ࣗ෼Ͱྫ֎Λൃੜͤ͞Δʹ͸ SBJTFϝιουΛ࢖͏ ʢ৚݅ʹΑͬͯྫ֎Λൃੜͤ͞Δ ͳͲʣ w SBJTFϝιουʹ͸ݺͼग़͠ํ๏͕ͭଘࡏ͢Δ ᶃ SBJTFϝοηʔδ ᶄ

    SBJTFྫ֎Ϋϥε ᶅ SBJTFྫ֎Ϋϥε ϝοηʔδ ᶆ SBJTF ྫ֎Λൃੜͤ͞Δ
  37. ᶃ SBJTFϝοηʔδ
 3VOUJNF&SSPSΛൃੜͤ͞ ྫ֎ΦϒδΣΫτʹϝοηʔδͱ͠ ͯจࣈྻΛηοτ͢Δ ᶄ SBJTFྫ֎Ϋϥε
 ࢦఆͨ͠ྫ֎Λൃੜͤ͞Δ ᶅ SBJTFྫ֎Ϋϥε

    ϝοηʔδ
 ࢦఆͨ͠ྫ֎Λൃੜͤ͞ ৽͘͠ੜ੒͞Εͨྫ֎ΦϒδΣΫτʹ ϝοηʔδͱͯ͠จࣈྻΛηοτ ᶆ SBJTF
 3VOUJNF&SSPSΛൃੜͤ͞ΔSFTDVFઅͰ࣮ߦ͢Δͱ ࠷ޙʹൃ ੜͨ͠ྫ֎Λ΋͏Ұ౓ൃੜͤ͞Δ ྫ֎Λൃੜͤ͞Δ
  38. w ྫʣྫ֎ΫϥεΛ࡞੒͠ ͦͷྫ֎Λൃੜͤ͞Δ ྫ֎Λൃੜͤ͞Δ

  39. w ͱ͜ΖͰ 4UBOEBSE&SSPSͷεʔύʔΫϥεͰ͋ Δ&YDFQUJPOΫϥεΛԿނܧঝ͠ͳ͍ͷ͔ w SFTDVFઅ͸ࢦఆ͕ͳ͍৔߹ 4UBOEBSE&SSPSΫ ϥεͱͦͷαϒΫϥεΛัଊ͢ΔͨΊ ྫ֎Λൃੜͤ͞Δ

  40. w ͭ·Γ &YDFQUJPOΛܧঝͨ͠ΫϥεͩͱSFTDVF અͰΩϟον͞Εͳ͍ ྫ֎Λൃੜͤ͞Δ

  41. w SFTDVFઅͰ&YDFQUJPOΛࢦఆ͢Ε͹Ωϟον͢ Δ͜ͱ΋Ͱ͖Δ͕ʜ
 
 
 
 
 w ͢΂ͯͷྫ֎ΛΩϟονͯ͠͠·͏ͷͰ ޷·͠

    ͘ͳ͍ ྫ֎Λൃੜͤ͞Δ
  42. w &YDFQUJPOΛัଊ͢Δͱ͍͏͜ͱ͸ ͢΂ͯͷྫ ֎ΛΩϟον͢Δ͜ͱʹͳΔ w 4JHOBM&YDFQUJPOͷ4*(*/5ͳΜ͔͸$USM$Λั ଊ͢ΔͷͰ ࠷ѱऴΘΒͳ͍ϓϩάϥϜ͕ग़དྷ্ ͕ͬͯ͠·͏Մೳੑ΋ʜ w

    ྫ֎ΫϥεΛ࡞Δ࣌͸ 4UBOEBSE&SSPSΫϥεΛ ܧঝ͠·͠ΐ͏ ྫ֎Λൃੜͤ͞Δ
  43. ࠓճͷ
 ·ͱΊ

  44. ·ͱΊ w SFTDVFઅΛ༻͍Δ͜ͱͰ ྫ֎ॲཧΛߦ͏͜ͱ͕ Ͱ͖Δ w SFTDVFʹྫ֎Λࢦఆ͢Δͱ ͦͷྫ֎ͷΈัଊ͢ Δ͜ͱ͕Ͱ͖Δࢦఆ͠ͳ͍৔߹͸ 

    4UBOEBSE&SSPSͱͦͷαϒΫϥε͕ิ଍͞ΕΔ w ྫ֎͕ى͜Δ ى͜Βͳ͍ʹ͔͔ΘΒͣߦ͍͍ͨॲ ཧ͸ FOTVSFઅʹهड़͢Δ w SBJTFͰྫ֎Λҙਤతʹൃੜͤ͞Δࣄ͕Ͱ͖Δ