Slide 1

Slide 1 text

3VCZͷ ඪ४ఴ෇ϥΠϒϥϦΛ։ൃ͢Δ দຊफଠ࿠!TPVUBSP

Slide 2

Slide 2 text

!TPVUBSP w 3VCZίϛολʔ w 3VCZͷܕΛ΍͍ͬͯΔ w 4UFFQ w 3#4 w גࣜձࣾλΠϛʔ দຊफଠ࿠

Slide 3

Slide 3 text

3VCZͷඪ४ϥΠϒϥϦ

Slide 4

Slide 4 text

3VCZͷඪ४ϥΠϒϥϦ w ৄ͘͠͸3VCZ,BJHJͷ)JSPTIJ4)*#"5"ͷτʔΫΛݟͯ w IUUQTSVCZLBJHJPSHQSFTFOUBUJPOTITCUIUNMEBZ w πʔϧ w ෼ྨ

Slide 5

Slide 5 text

πʔϧ w HFN w 3VCZ༻ͷϥΠϒϥϦͷ͜ͱ w 3VCZ(FN w HFNΛΠϯετʔϧ͢Δπʔϧɺϗετ͍ͯ͠ΔαʔϏε w #VOEMFS w ͲͷHFNΛΠϯετʔϧ͢Δ͔ΛϓϩδΣΫτຖʹ؅ཧ͢Δπʔϧ

Slide 6

Slide 6 text

$ gem install rbs ↑ rbsͱ͍͏gemʢϥΠϒϥϦʣͱͦͷґଘΛΠϯετʔϧ $ bundle install ↑ Gemfileͱ͍͏ϑΝΠϧͷઃఆʹैͬͯɺϓϩδΣΫτ͕ґଘ͢ΔgemΛΠϯετʔϧ

Slide 7

Slide 7 text

#VOEMFSͷϦϦʔε )JSPTIJ4)*#"5" 3VCZ,BJHJ .BWFOͷϦϦʔε

Slide 8

Slide 8 text

ඪ४ఴ෇ϥΠϒϥϦͷ෼ྨ w ૊ΈࠐΈFNCFEEFE w 4UBOEBSEMJCSBSZHFNʹͳ͍ͬͯͳ͍ϥΠϒϥϦͨͪ w %FGBVMUHFNT࠷ॳ͔ΒΠϯετʔϧ͞Ε͍ͯΔHFN w #VOEMFEHFNT࠷ॳ͔ΒΠϯετʔϧ͞Ε͍ͯΔHFN🤔

Slide 9

Slide 9 text

)JSPTIJ4)*#"5" 3VCZ,BJHJ

Slide 10

Slide 10 text

IUUQTHJUIVCDPNSVCZSVCZCMPCBEEEEFDGDDEFFEFGHFNTCVOEMFE@HFNT

Slide 11

Slide 11 text

SCTHFNͷ։ൃ

Slide 12

Slide 12 text

SCTHFNͷ։ൃ w 3VCZ͔Β#VOEMFEHFNͷҰͭ w 3VCZͱ͸ผͷϦϙδτϦͰɺ3VCZDPSFͱ͸ಠཱͯ͠։ൃΛߦ͍ɺ3VCZ DPSFͱ͸ಠཱͯ͠৽͍͠όʔδϣϯΛϦϦʔε͠ɺ3VCZΛΠϯετʔϧ͢Δ ͱಉ࣌ʹΠϯετʔϧ͞ΕΔ

Slide 13

Slide 13 text

ͦ΋ͦ΋3#4ͱ͸ w 3VCZϓϩάϥϜͷܕΛදݱ͢Δ ͨΊͷݴޠͱͦͷॲཧΛ͢Δͨ ΊͷϥΠϒϥϦ w IUUQTHJUIVCDPNSVCZSCT w SCTHFNͷதʹ͸ɺ3VCZͷ૊Έ ࠐΈϥΠϒϥϦͷܕఆ͕ٛೖͬ ͍ͯΔ

Slide 14

Slide 14 text

3#4ͷλʔήοτ w 3#4͸·ͩ։ൃ్தͳͷͰɺ3VCZΑΓ΋සൟʹϦϦʔε͞ΕΔ w ͦͷͨΊ࠷৽ͷϦϦʔε൛3VCZ Λલఏͱͯ͠։ൃ͞Ε͍ͯΔ w 3#4ʹؚ·Ε͍ͯΔඪ४ϥΠϒϥϦͷܕ͸ϦϦʔε൛ͷ3VCZલఏ w ͞Βʹɺ։ൃ൛ͷ3VCZ ʹ΋3#4͸ؚ·ΕΔ w ͭ·Γʜʜʁʁʁ

Slide 15

Slide 15 text

·͋·͋յΕΔ

Slide 16

Slide 16 text

ͳΜͰյΕΔʁ w 3#4ͷ૊ΈࠐΈϥΠϒϥϦͷܕΛ֬ೝ͢Δςετ͕յΕΔ w SVCZSVCZϦϙδτϦͰ͸$*ͰCVOEMFEHFNͷςετΛ࣮ߦ͢ΔΑ͏ʹͳ ͍ͬͯΔ w ϝιου͕ফ͑ͨΓɺҾ਺ͷॲཧ͕ඍົʹมΘͬͨΓ͢Δ w ී௨ͷ3VCZϓϩάϥϜʹ͸Өڹ͕ͳ͍͕ɺ3#4ͷςετʹ͸Өڹ͢Δ

Slide 17

Slide 17 text

ྫ*0XBJUͷฦΓ஋ͷܕ͕มΘͬͨ w self | bool | nil͔ΒInteger | false | nilʹͳͬͨ

Slide 18

Slide 18 text

͔ͳΓΊΜͲ͍͘͞ 3#4ͷςετΛमਖ਼͢Δ w 3#4ͷܕఆٛ͸։ൃ൛͕ϦϦʔε͞Ε͔ͯΒߋ৽͢Δ ৽͍͠3#4ΛϦϦʔε͢Δ ৽͘͠ϦϦʔεͨ͠3#4Λ࢖ͬͯ3VCZͷ$*Λճ͢ ௚ͬͯͳ͔ͬͨΒ͔Β΍Γ௚͠

Slide 19

Slide 19 text

ରࡦ w SCTHFNΛϦϦʔε͠ͳͯ͘΋3VCZͷ$*ͰςετͰ͖ΔΑ͏ʹ͢Δ w ίϛοτΛॻ͍͓ͯ͘ͱɺͦΕΛ࢖ͬͯςετ͢Δ w 3VCZͷ$*͕௚Δ͜ͱΛ֬ೝ͔ͯ͠ΒSCTHFNΛϦϦʔε͢Δ

Slide 20

Slide 20 text

ରࡦ w SVCZSVCZͷதʹ͋Δrbs_skip_testsΛฤू͢ΔͱɺSCTHFNͷςετ ΛεΩοϓͰ͖ΔΑ͏ʹͨ͠ w SCTHFNͷमਖ਼Λ଴ͨͣʹSVCZSVCZͷ$*͕௚ΔΑ͏ʹͳͬͨ

Slide 21

Slide 21 text

·ͱΊ w ·͋·͋େม w ։ൃ൛ͷ3VCZͱϦϦʔε൛ͷ3VCZΛࠞͥΔͱ͜Ζʹແཧ͕͋Δ w ʮ҆ఆ͍ͯ͠ͳ͍͔Β3VCZΑΓ΋ߴස౓ͰϦϦʔε͍ͨ͠ʯͱ͍͏ཁ͕݅ ࠔ೉͞Λ૿͍ͯ͠Δ w ݹ͔͘Β͋ΔϥΠϒϥϦΛHFNʹͨ͠΍ͭ͸ɺރΕ͍ͯΔͷͰͦΜͳʹେม Ͱ͸ͳͦ͞͏