Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
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.3k
Hanamiを支える技術 2023 / Asakusa.rb Hanami 2023
a_matsuda
2
750
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.9k
A RubyKaigi Talk
a_matsuda
8
2.7k
Ginza Rails 1
a_matsuda
6
1.3k
Other Decks in Programming
See All in Programming
Implementation Patterns
denyspoltorak
0
140
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
140
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
140
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
2.2k
AtCoder Conference 2025
shindannin
0
860
Developing static sites with Ruby
okuramasafumi
0
340
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
7
2.4k
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
3
1.4k
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
200
愛される翻訳の秘訣
kishikawakatsumi
3
370
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
470
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
1
310
Featured
See All Featured
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
43
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
210
Building Applications with DynamoDB
mza
96
6.9k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Designing Experiences People Love
moore
143
24k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Navigating Weather and Climate Data
rabernat
0
61
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.2k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
730
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
The browser strikes back
jonoalderson
0
280
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ੈͷதΛม͑ଓ͚· ͢ɻ Ҿ͖ଓ͖͝ظ͍ͩ͘͞ʂ