Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
510
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
なあ兄弟、 余白の意味を考えてから UI実装してくれ!
ktcryomm
10
10k
関数の挙動書き換える
takatofukui
4
760
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
4.2k
CSC305 Lecture 15
javiergs
PRO
0
220
AIエージェントでのJava開発がはかどるMCPをAIを使って開発してみた / java mcp for jjug
kishida
4
850
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2.1k
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
200
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.5k
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
110
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
2.8k
Socio-Technical Evolution: Growing an Architecture and Its Organization for Fast Flow
cer
PRO
0
200
しっかり学ぶ java.lang.*
nagise
1
470
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
960
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
69k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
700
The World Runs on Bad Software
bkeepers
PRO
72
12k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Scaling GitHub
holman
464
140k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Typedesign – Prime Four
hannesfritz
42
2.9k
For a Future-Friendly Web
brad_frost
180
10k
Designing Experiences People Love
moore
142
24k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
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ੈͷதΛม͑ଓ͚· ͢ɻ Ҿ͖ଓ͖͝ظ͍ͩ͘͞ʂ