$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ruby on Ruby on Rails
Search
Akira Matsuda
February 24, 2018
Programming
19
3.6k
Ruby on Ruby on Rails
プログラミング言語Ruby 25周年記念イベントの記念講演「Rubyの今」のWEB編の発表スライド
http://25.ruby.or.jp/
Akira Matsuda
February 24, 2018
Tweet
Share
More Decks by Akira Matsuda
See All by Akira Matsuda
初心者のためのRubyKaigi入門/RubyKaigi Introduction
a_matsuda
15
7.1k
Hanamiを支える技術 2023 / Asakusa.rb Hanami 2023
a_matsuda
2
740
Rails 7.1をn倍速くした話
a_matsuda
11
13k
RubyKaigi 2022 After Talk
a_matsuda
0
500
Coming Soon…💎 / coming soon
a_matsuda
12
8.3k
Rails Performance Issues and Solutions
a_matsuda
9
38k
Extending Rails for Real World App Development
a_matsuda
9
7.8k
A RubyKaigi Talk
a_matsuda
8
2.6k
Ginza Rails 1
a_matsuda
6
1.3k
Other Decks in Programming
See All in Programming
生成AIを活用したリファクタリング実践 ~コードスメルをなくすためのアプローチ
raedion
0
180
All(?) About Point Sets
hole
0
240
CSC305 Lecture 14
javiergs
PRO
0
330
React Native New Architecture 移行実践報告
taminif
1
120
しっかり学ぶ java.lang.*
nagise
1
470
UIデザインに役立つ 2025年の最新CSS / The Latest CSS for UI Design 2025
clockmaker
10
4.6k
モデル駆動設計をやってみよう Modeling Forum2025ワークショップ/Let’s Try Model-Driven Design
haru860
0
210
関数の挙動書き換える
takatofukui
4
760
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
480
dnx で実行できるコマンド、作ってみました
tomohisa
0
120
Module Harmony
petamoriken
2
590
Socio-Technical Evolution: Growing an Architecture and Its Organization for Fast Flow
cer
PRO
0
160
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.1k
Visualization
eitanlees
150
16k
We Have a Design System, Now What?
morganepeng
54
7.9k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
The Invisible Side of Design
smashingmag
302
51k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Transcript
Ruby on Ruby on Rails Akira Matsuda
Ruby25प
25ࡀ͓ΊͰͱ͏ʂ
Rubyͷࠓ ʮRubyͱWEBʯͱ͍͏ ͓Ͱɻ
RubyͰWEBͱ͍͑ʁ
Ruby on Rails Ͱ͢ΑͶɻ
whoami দా ໌ Rubyίϛολʔ Ruby on Railsίϛολʔ
RubyKaigi 2018
RubyKaigi 2018 CFPࠓ݄͍ͬͺ͍ʂ
Asakusa.rb
Asakusa.rb 10पʂ
Asakusa.rb 10पʂ ϝϯόʔҰචॻ͘͜ͱʂ
Ruby on Railsͱ ͍·ੈքͰҰ൪ΘΕ͍ͯΔWEB ΞϓϦέʔγϣϯɾϑϨʔϜϫʔΫ (ͩΖ͏ͱࢥ͏͚Ͳཁग़య) ΞϓϦέʔγϣϯΛRubyͰॻ͚Δ ຊମpure RubyͰॻ͔Ε͍ͯΔ
RubyͱRailsͷҧ͍ Ruby: p "Hello, World" ͬͯॻ͘ͱࠇ͍ը໘ ʹ "Hello, World" ͬͯग़ྗͰ͖Δຯͳ
ͭɻRailsΛಈ͔ͨ͢Ίͷಓ۩ͱͯ͠ΒΕ Δɻ Rails: Կͳ͍ͱ͜Ζ͔Β15͙Β͍Ͱ͍͖ ͳΓόʔϯͱϒϩάͷΞϓϦ͕࡞Εͯ͠·͏ ࠷ߴʹศརͰΫʔϧͳຐ๏Έ͍ͨͳͭɻ
RailsRubyΛϝδϟʔݴޠʹ ԡ্͛ͨ͠ݪಈྗ Ruby before Rails: ୭Βͳ͍ ϚΠφʔݴޠ Ruby after Rails:
Ruby͍ͬͯ͏ ݴޠʹ͍ͭͯશ͘ฉ͍ͨ͜ͱ͕ ແ͍ϓϩάϥϚʔډͳ͍ΑͶʁ
ͱ͜ΖͰɺRuby on Railsͬͯ ԿࡀͳΜ͚ͩͬʁ 2004ʹ։ൃελʔτ ݱࡏ14
RubyʹͱͬͯɺRails ੜҎ্࿈Εఴͬͨ ͬͯΕͳ͍ ؔʹ͋Δ
Railsͷಛ ݱͷϦΞϧͳΛղܾ͢Δ πʔϧ ৗʹมԽ͠ଓ͚Δ ͨͷ͍͠ Ṷ͔Δ
ݱͷϦΞϧͳΛ ղܾ͢Δಓ۩ Basecampͱ͍͏ݱ࣮ͷελʔτ ΞοϓͷϓϩμΫτ͔ΒΓग़͞Ε ͯOSSԽ͞Εͨͷ ϑϨʔϜϫʔΫ͔͠࡞ͬͯͳ͍Α͏ ͳݚڀॴͷϓϩϑϨʔϜϫʔΫ࡞Ո ͕࡞ͬͨΑ͏ͳͰͳ͍
ৗʹมԽ͠ଓ͚Δ 5,000ਓͷʮίϯτϦϏϡʔλʔʯ ͨͪʹΑΔઈ͑ؒͳ͍վྑ ܾͯ҆͠ॅ͠ͳ͍ ͣͬͱΓଓ͚ͯΔ͔Β͍ͭ·Ͱݹ͘ͳΒͳ ͍ ৗʹ࠷৽WEBϑϨʔϜϫʔΫͰ͋Γଓ͚͍ͯΔ
ͣͬͱࢭ·ΒͣʹΓଓ͚Δ ιϑτΣΞ ʮઢ࿏ʯͱ͍͏ϝλϑΝʔ ʹࠐΊΒΕ͍ͯΔ
Railsͷʮ৽͠͞ʯ WEBΞϓϦ։ൃγʔϯશମΛมֵ CoCɺີ݁߹ϑϧελοΫMVCɺδΣωϨʔλʔɺTDDɺ AJAXɺRESTͷ࠶ൃݟɺalt JSɺassetͷunificationɺPJAX తͳΞϓϩʔνɺϓϥάΠϯػߏɺbundlerͷύοέʔδ ϚωʔδϝϯτɺͳͲͳͲͳͲͳͲ ෦తʹྑ͠ѱ͠Λ͡Δ༨͋Δ͔͠Εͳ͍͕ɺ ओுͷ͋ΔιϑτΣΞΛੈʹग़͢͜ͱʹΑͬͯɺΈΜͳ ͷߟ͑ํʹେ͖͘ӨڹΛ༩͑ଓ͚͖ͯͨ
ͨͷ͍͠ Railsͨͷ͍͠ΑͶ 10Ҏ্ͣͬͱࣄͰRails ΛͬͯΔ͚Ͳɺ͍·ͩʹ ຖͷࣄָ͕͍͠Ͱ͢
ʮRubyΛΩϝΔͱ͖͍͍ͪʯ (by Rubyͷύύ) RailsRubyͷָ͠͞ΛWEB ͷੈքʹ·Ͱ͛ͯ͘ΕΔ Έ ؾ࣋ͪΑʙ͘WEBΞϓϦ͕࡞ ΕͪΌ͏
Ṷ͔Δ ଟ͘ͷιϑτΣΞΛ ੜΈग़͠ɺϏδωεΛճ͢ ݪಈྗʹ
RailsͰ࡞ΒΕͨϓϩμΫτͨͪ Twitter, GitHub, Basecamp, Airbnb, Uber, etc. ΫοΫύουɺ৯ϩάɺ MoneyforwardɺͳͲͳͲ
ಛʹςΫϊϩδʔελʔτΞο ϓʹͱͯॏๅ͞ΕΔ ϓϩάϥϚʔ1ਓ͔2ਓ͙Β͍ Ͱ࢝ΊΒΕͨΓ͢Δ ·͞ʹRuby/Rails ελʔτΞοϓʹ͏͚ͬͯͭ
RailsੈքΛม͑ͨ Ruby / RailsͰ࡞ΒΕͨιϑτΣ ΞʹΒͣΒͣͷ͏ͪʹ୭͕ ຖ৮͍ͬͯΔͣ ͜͏ͯ͠ɺϓϩάϥϚʔ͚ͩͰͳ ͘ɺੈͷதશମʹେ͖ͳมֵΛͨ Β͍ͯ͠Δ
વɺձ͕ࣾṶ͔Ε ϓϩάϥϚʔṶ͔Δ
ϓϩάϥϚʔʹͱͬͯɺ Rubyͷͤ͘ʹࣄʹͳΔ ͳΜͱɺன͔ؒΒRubyΛΩϝͳ͕Β͓ ۚ·ͰΒ͑Δͱ͍͏ఱࠃͷΑ͏ͳঢ় گ͕౸དྷ ࿑ಇ == ͭΒ͍ɺͱ͍͏ط֓೦ͷഁյ ͕ͨΒ͞Εͨ ͜ΕϠό͍
ͱ͜ΖͰɺ"Ruby on Rails"ͬͯ Α͘ߟ͑Δͱมͳ໊લͩΑͶʁ
ٯͰʁͬͯࢥ͍·͢ΑͶʁ RubyͰ࡞ͬͨʮRailsʯͬ ͍ͯ͏໊લͷιϑτΣΞ ͳΜ͔ͩΒ "Rails on Ruby" ͳΜ͡Όͳ͍ͷʁ
"Ruby on Rails"ʹ ࠐΊΒΕͨҙຯ DHH͕ෑ͍ͨϨʔϧʹ ͤͯΈΜͳͷݩʹRubyͷ ָ͠͞ɾੜ࢈ੑΛӡΜͰ͘ ΕΔΠϯϑϥ
Rails͜ͷઌͲ͏ͳΔͷ͔ʁ ઌि͙Β͍͔Βόʔδϣϯ6.0Λ։ൃத ৗʹ࠷৽ͷϑϨʔϜϫʔΫͰ͋Δ͜ͱΛࢤ͍ͯ͠ ΔͷͰɺݹ͘ͳΒͳ͍ ࠓͷͱ͜ΖRailsʹऔͬͯΘΔଘࡏݟͨΒͳ͍ Webͦͷͷ͕શʹഇΕΔ·ͰWEBͷੈքͰ ͜ͷ··ઈରউऀͰ͋Γଓ͚ΔͷͰ ͋ͱ25͍͚ΔΜ͡Όͳ͍͔
ࠓޙͱϤϩγΫʂ ͜Ε͔ΒɺRailsมΘΓଓ ͚·͢ɻ RailsੈͷதΛม͑ଓ͚· ͢ɻ Ҿ͖ଓ͖͝ظ͍ͩ͘͞ʂ