Slide 1

Slide 1 text

Ruby on Ruby on Rails Akira Matsuda

Slide 2

Slide 2 text

Ruby25प೥

Slide 3

Slide 3 text

25ࡀ͓ΊͰͱ͏ʂ

Slide 4

Slide 4 text

Rubyͷࠓ ʮRubyͱWEBʯͱ͍͏
 ͓୊Ͱɻ

Slide 5

Slide 5 text

RubyͰWEBͱ͍͑͹ʁ

Slide 6

Slide 6 text

Ruby on Rails Ͱ͢ΑͶɻ

Slide 7

Slide 7 text

whoami দా ໌ Rubyίϛολʔ Ruby on Railsίϛολʔ

Slide 8

Slide 8 text

RubyKaigi 2018

Slide 9

Slide 9 text

RubyKaigi 2018 CFPࠓ݄͍ͬͺ͍ʂ

Slide 10

Slide 10 text

Asakusa.rb

Slide 11

Slide 11 text

Asakusa.rb 10प೥ʂ

Slide 12

Slide 12 text

Asakusa.rb 10प೥ʂ ϝϯόʔ͸Ұචॻ͘͜ͱʂ

Slide 13

Slide 13 text

Ruby on Railsͱ͸ ͍·ੈքͰҰ൪࢖ΘΕ͍ͯΔWEB ΞϓϦέʔγϣϯɾϑϨʔϜϫʔΫ
 (ͩΖ͏ͱࢥ͏͚Ͳཁग़య) ΞϓϦέʔγϣϯΛRubyͰॻ͚Δ ຊମ΋pure RubyͰॻ͔Ε͍ͯΔ

Slide 14

Slide 14 text

RubyͱRailsͷҧ͍ Ruby: p "Hello, World" ͬͯॻ͘ͱࠇ͍ը໘ ʹ "Hello, World" ͬͯग़ྗͰ͖Δ஍ຯͳ΍ ͭɻRailsΛಈ͔ͨ͢Ίͷಓ۩ͱͯ͠஌ΒΕ Δɻ Rails: Կ΋ͳ͍ͱ͜Ζ͔Β15෼͙Β͍Ͱ͍͖ ͳΓόʔϯͱϒϩάͷΞϓϦ͕࡞Εͯ͠·͏ ࠷ߴʹศརͰΫʔϧͳຐ๏Έ͍ͨͳ΍ͭɻ

Slide 15

Slide 15 text

Rails͸RubyΛϝδϟʔݴޠʹ
 ԡ্͛ͨ͠ݪಈྗ Ruby before Rails: ୭΋஌Βͳ͍ ௒ϚΠφʔݴޠ Ruby after Rails: Ruby͍ͬͯ͏ ݴޠʹ͍ͭͯશ͘ฉ͍ͨ͜ͱ͕
 ແ͍ϓϩάϥϚʔ͸ډͳ͍ΑͶʁ

Slide 16

Slide 16 text

ͱ͜ΖͰɺRuby on Railsͬͯ
 ԿࡀͳΜ͚ͩͬʁ 2004೥ʹ։ൃελʔτ ݱࡏ14೥໨

Slide 17

Slide 17 text

RubyʹͱͬͯɺRails͸
 ൒ੜҎ্࿈Εఴͬͨ஥ ΋͸΍੾ͬͯ΋੾Εͳ͍
 ؔ܎ʹ͋Δ

Slide 18

Slide 18 text

Railsͷಛ௃ ݱ৔ͷϦΞϧͳ໰୊Λղܾ͢Δ
 πʔϧ ৗʹมԽ͠ଓ͚Δ ͨͷ͍͠ Ṷ͔Δ

Slide 19

Slide 19 text

ݱ৔ͷϦΞϧͳ໰୊Λ
 ղܾ͢Δಓ۩ Basecampͱ͍͏ݱ࣮ͷελʔτ ΞοϓͷϓϩμΫτ͔Β੾Γग़͞Ε ͯOSSԽ͞Εͨ΋ͷ ϑϨʔϜϫʔΫ͔͠࡞ͬͯͳ͍Α͏ ͳݚڀॴͷϓϩϑϨʔϜϫʔΫ࡞Ո ͕࡞ͬͨΑ͏ͳ୅෺Ͱ͸ͳ͍

Slide 20

Slide 20 text

ৗʹมԽ͠ଓ͚Δ 5,000ਓͷʮίϯτϦϏϡʔλʔʯ
 ͨͪʹΑΔઈ͑ؒͳ͍վྑ ܾͯ҆͠ॅ͠ͳ͍ ͣͬͱ૸Γଓ͚ͯΔ͔Β͍ͭ·Ͱ΋ݹ͘ͳΒͳ ͍ ৗʹ࠷৽WEBϑϨʔϜϫʔΫͰ͋Γଓ͚͍ͯΔ

Slide 21

Slide 21 text

ͣͬͱࢭ·Βͣʹ૸Γଓ͚Δ ιϑτ΢ΣΞ ʮઢ࿏ʯͱ͍͏ϝλϑΝʔ ʹࠐΊΒΕ͍ͯΔ

Slide 22

Slide 22 text

Railsͷʮ৽͠͞ʯ WEBΞϓϦ։ൃγʔϯશମΛมֵ CoCɺີ݁߹ϑϧελοΫMVCɺδΣωϨʔλʔɺTDDɺ AJAXɺRESTͷ࠶ൃݟɺalt JSɺassetͷunificationɺPJAX తͳΞϓϩʔνɺϓϥάΠϯػߏɺbundlerͷύοέʔδ ϚωʔδϝϯτɺͳͲͳͲͳͲͳͲ ෦෼తʹ͸ྑ͠ѱ͠Λ࿦͡Δ༨஍͸͋Δ͔΋͠Εͳ͍͕ɺ ओுͷ͋Διϑτ΢ΣΞΛੈʹग़͢͜ͱʹΑͬͯɺΈΜͳ ͷߟ͑ํʹେ͖͘ӨڹΛ༩͑ଓ͚͖ͯͨ

Slide 23

Slide 23 text

ͨͷ͍͠ Railsͨͷ͍͠ΑͶ 10೥Ҏ্ͣͬͱ࢓ࣄͰRails Λ΍ͬͯΔ͚Ͳɺ͍·ͩʹ ຖ೔ͷ࢓ࣄָ͕͍͠Ͱ͢

Slide 24

Slide 24 text

ʮRubyΛΩϝΔͱ͖΋͍͍ͪʯ (by Rubyͷύύ) Rails͸Rubyͷָ͠͞ΛWEB ͷੈքʹ·Ͱ޿͛ͯ͘ΕΔ࿮ ૊Έ ؾ࣋ͪΑʙ͘WEBΞϓϦ͕࡞ ΕͪΌ͏

Slide 25

Slide 25 text

Ṷ͔Δ ਺ଟ͘ͷιϑτ΢ΣΞΛ
 ੜΈग़͠ɺϏδωεΛճ͢ ݪಈྗʹ

Slide 26

Slide 26 text

RailsͰ࡞ΒΕͨϓϩμΫτͨͪ Twitter, GitHub, Basecamp, Airbnb, Uber, etc. ΫοΫύουɺ৯΂ϩάɺ MoneyforwardɺͳͲͳͲ

Slide 27

Slide 27 text

ಛʹςΫϊϩδʔελʔτΞο ϓʹͱͯ΋ॏๅ͞ΕΔ ϓϩάϥϚʔ1ਓ͔2ਓ͙Β͍ Ͱ࢝ΊΒΕͨΓ͢Δ ·͞ʹRuby/Rails͸
 ελʔτΞοϓʹ͏͚ͬͯͭ

Slide 28

Slide 28 text

Rails͸ੈքΛม͑ͨ Ruby / RailsͰ࡞ΒΕͨιϑτ΢Σ Ξʹ͸஌Βͣ஌Βͣͷ͏ͪʹ୭΋͕ ຖ೔৮͍ͬͯΔ͸ͣ ͜͏ͯ͠ɺϓϩάϥϚʔ͚ͩͰͳ ͘ɺੈͷதશମʹେ͖ͳมֵΛ΋ͨ Β͍ͯ͠Δ

Slide 29

Slide 29 text

౰વɺձ͕ࣾṶ͔Ε͹
 ϓϩάϥϚʔ΋Ṷ͔Δ

Slide 30

Slide 30 text

ϓϩάϥϚʔʹͱͬͯ͸ɺ
 Rubyͷͤ͘ʹ࢓ࣄʹͳΔ ͳΜͱɺன͔ؒΒRubyΛΩϝͳ͕Β͓ ۚ·Ͱ΋Β͑Δͱ͍͏ఱࠃͷΑ͏ͳঢ় گ͕౸དྷ ࿑ಇ == ͭΒ͍ɺͱ͍͏ط੒֓೦ͷഁյ ͕΋ͨΒ͞Εͨ ͜Ε͸Ϡό͍

Slide 31

Slide 31 text

ͱ͜ΖͰɺ"Ruby on Rails"ͬͯ Α͘ߟ͑Δͱมͳ໊લͩΑͶʁ

Slide 32

Slide 32 text

ٯͰ͸ʁͬͯࢥ͍·͢ΑͶʁ RubyͰ࡞ͬͨʮRailsʯͬ ͍ͯ͏໊લͷιϑτ΢ΣΞ ͳΜ͔ͩΒ "Rails on Ruby" ͳΜ͡Όͳ͍ͷʁ

Slide 33

Slide 33 text

"Ruby on Rails"ʹ
 ࠐΊΒΕͨҙຯ DHH͕ෑ͍ͨϨʔϧʹ৐ ͤͯΈΜͳͷݩʹRubyͷ ָ͠͞ɾੜ࢈ੑΛӡΜͰ͘ ΕΔΠϯϑϥ

Slide 34

Slide 34 text

Rails͸͜ͷઌͲ͏ͳΔͷ͔ʁ ઌि͙Β͍͔Βόʔδϣϯ6.0Λ։ൃத ৗʹ࠷৽ͷϑϨʔϜϫʔΫͰ͋Δ͜ͱΛࢤ޲͍ͯ͠ ΔͷͰɺݹ͘ͳΒͳ͍ ࠓͷͱ͜ΖRailsʹऔͬͯ୅ΘΔଘࡏ͸ݟ౰ͨΒͳ͍ Webͦͷ΋ͷ͕׬શʹഇΕΔ·Ͱ͸WEBͷੈքͰ ͸͜ͷ··ઈରউऀͰ͋Γଓ͚ΔͷͰ͸ ͋ͱ25೥͸͍͚ΔΜ͡Όͳ͍͔

Slide 35

Slide 35 text

ࠓޙͱ΋ϤϩγΫʂ ͜Ε͔Β΋ɺRails͸มΘΓଓ ͚·͢ɻ
 Rails͸ੈͷதΛม͑ଓ͚· ͢ɻ
 Ҿ͖ଓ͖͝ظ଴͍ͩ͘͞ʂ