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
Perfect Ruby on Rails v2
Search
sugamasao
July 25, 2020
Technology
0
20k
Perfect Ruby on Rails v2
パーフェクトRuby on Rails【増補改訂版】が発売したので少し裏話をお伝えします
sugamasao
July 25, 2020
Tweet
Share
More Decks by sugamasao
See All by sugamasao
EMConf JP 2025 懇親会LT / EMConf JP 2025 social gathering
sugamasao
2
500
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
680
開発生産性、上から見るか 下から見るか / development productivity and cognitive science
sugamasao
12
9k
開発の安定性・スループットを定量的に見る #とは / Quantitative view of development
sugamasao
1
1.1k
SaaS.tech #1 / SmartHR
sugamasao
2
6.1k
Ruby history of my life
sugamasao
2
11k
Ruby on Rails 6.0 New Feature
sugamasao
1
12k
Rubyを説明するのは難しい(仮) / ruby is difficult
sugamasao
5
9.5k
書籍執筆ツールRe:VIEWのご紹介 / yapc8oji
sugamasao
0
450
Other Decks in Technology
See All in Technology
Oracle Database オプティマイザ・ヒントの活用
oracle4engineer
PRO
1
140
AIコードエディタは開発を変えるか?Cursorをチームに導入して1ヶ月経った本音
ota1022
1
700
ソフトウェアは捨てやすく作ろう/Let's make software easy to discard
sanogemaru
10
5.8k
MCP Clientを活用するための設計と実装上の工夫
yudai00
1
800
2025advance01
minamizaki
0
130
KMP導⼊において、マネジャーとして考えた事
sansantech
PRO
1
210
Babylon.jsでゲームを作ってみよう
limes2018
0
100
エンジニアが組織に馴染むために勉強会を主催してチームの壁を越える
ohmori_yusuke
2
120
Scale Security Programs with Scorecarding
ramimac
0
430
プロジェクトマネジメント実践論|現役エンジニアが語る!~チームでモノづくりをする時のコツとは?~
mixi_engineers
PRO
3
180
会社員しながら本を書いてきた知見の共有
sat
PRO
3
690
令和最新版TypeScriptでのnpmパッケージ開発
lycorptech_jp
PRO
0
110
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
245
12k
A better future with KSS
kneath
239
17k
Designing for humans not robots
tammielis
253
25k
It's Worth the Effort
3n
184
28k
4 Signs Your Business is Dying
shpigford
183
22k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Building an army of robots
kneath
306
45k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Code Review Best Practice
trishagee
68
18k
Transcript
ൃചͰ͖ͯΑ͔ͬͨ Kaigi on Rails new(2020/7/25) sugamasao
[email protected]
ͩΕʁ HN:sugamasao PN:͕͢ΘΒ ·͞ͷΓ Rubyྺ : 14͘Β͍ Railsྺ : 10͘Β͍
• WebΞϓϦέʔγϣϯϓϩάϥϚʔ • Rubyʹؔ͢Δॻ੶ͷࣥච׆ಈ
ࣥචྺ 2013 2019 2014 2018 2017 2020
ࣥචྺ 2013 2019 2014 2018 2017 2020 ࠓͷ
͓Αͦ6ӽ͠ʹ ύʔϑΣΫτRuby on Railsͱ͍͏ॻ੶ ΛվగͰ͖ͨͱ͍͏ ͓Λ͠·͢
ΑΖ͘͠ ͓Ͷ͕͍͠·͢
ڞஶ ϝϯόʔ
୭1ਓ͚ܽͯ ग़൛·Ͱ౸ୡͰ ͖ͳ͔ͬͨ ʢͷͰɺຊʹײँ͔͠ͳ͍ʣ
౸ୡͰ͖ͳ͔ͬͨϩά ॳ൛࣌ͷίϛοτ
౸ୡͰ͖ͳ͔ͬͨϩά ҰॠͷΔؾ
౸ୡͰ͖ͳ͔ͬͨϩά ͍Α͍ΑຊʹΔ͔͠ͳ͘ͳͬͨ࣌
౸ୡͰ͖ͳ͔ͬͨϩά ͜͜ͰҰମͳʹ͕ىͬͨ͜ͷ͔? ͦͷṖΛղ͖໌͔͘͢զʑΞϚκϯͷԞͱ͔ͬͨ
2017/09ʙ2018/02 վగΛΓ࢝Ί͕͖ͨ(ry
2018/02ʙ2018/10 ແ෩
2018/02ʙ2018/10 ʢແ෩ͳঢ়ଶʹରͯ͠ʣ ୲ฤूऀࢯ ʮύʔϑΣΫτRuby on Railsͷ४උӡಈ ͱͯ͠1ϜοΫຊΛग़͠·͠ΐ͏͔ʂʯ ʮ͑ͬʯʮ͑ͬʯ
2018/11ʙ2019/10
2018/11ʙ2019/10 https://twitter.com/igaiga555/status/1186457440612544513 ग़ɺग़ʙωλόϨΣʙ
४උӡಈͯ͠·ͨ͠
ύRailsվగʹ๋͛ͨओͳ݄ 19ϲ݄͘Β͍ͬͯͨͬΆ͍
ύRailsվగʹ๋͛ͨओͳ݄ @igaiga555͞Μ @_yasaichi͞Μ ͕ࢀըͯ͘͠Εͨ࣌ظ
ύRailsվగʹ๋͛ͨओͳ݄ @igaiga555͞Μ @_yasaichi͞Μ ͕ࢀըͯ͘͠Εͨ࣌ظ Ͳ͏ݟͯஃͰ͢ɻຊʹ ͋Γ͕ͱ͏͍͟͝·ͨ͠ ʢຊʹʂʣ
ͦΜͳײ͡ͰͰ͖ͨͷ͕ ύʔϑΣΫτRuby on Railsʲ૿ิվగ൛ʳ Ͱ͢
Part1ɹRails ʙ overview 1ষɹRuby on Railsͷ֓ཁ 2ষɹRuby on RailsͱMVC 3ষɹԡ͓͖͍͑ͯͨ͞Railsͷجຊػೳ
ͬ͘͟Γݟॴ • جຊతͳRailsͷ͍ํʹ͍ͭͯɺςΩετͷϒϥο γϡΞοϓղઆ༰ͷΞοϓσʔτ • 3ষͰओʹ `rails` ίϚϯυͰར༻Ͱ͖ΔίϚϯυ܈ ͔ΒݟΔػೳͷհʢྫ͑credentialsͳͲʣ
Part2ɹRailsͷपลࣝ 4ষɹϑϩϯτΤϯυͷ։ൃख๏ 5ষɹRailsඪ४ͷػೳΛ׆༻ͯ͠ૉૣ͘ػೳ࣮͢Δ ͬ͘͟Γݟॴ • 4ষͰWebpacker/Sprockets(CSS͚)ΈΜͳେ ͖stimulusͷղઆͳͲΛ͍ͯ͠ΔΑ • 5ষͰActiveStorageͳͲɺRails͕ఏڙ͍ͯ͠Δศ རίϯϙʔωϯτͷղઆΛ͍ͯ͠ΔΑ
Part3ɹWebΞϓϦέʔγϣϯ։ൃ 6ষɹRailsΞϓϦέʔγϣϯ։ൃ 7ষɹRailsΞϓϦέʔγϣϯͷςετ ͬ͘͟Γݟॴ • ॳ൛Ͱ࡞ͨ͠AwesomeEventsΛݱ༻ʹϦϝΠΫ͠ ͍ͯΔΑ • ςετminitestʹม͑·ͨ͠ •
ίʔυWeb্ʹ͋Γɺষ୯ҐͰλάͳͲଧͬͯ͋Δͱ͍ ͏ҒۀΛୡ͍ͯ͠·͢ • https://github.com/perfect-ruby-on-rails/awesome_events
Part4ɹRailsΞϓϦέʔγϣϯͷ֦ுɾӡ༻ 8ষɹRailsΞϓϦέʔγϣϯ֦ு 9ষɹίʔυ࣭Λ্͛Δ 10ষɹίϯςφΛར༻ͨ͠RailsΞϓϦέʔγϣϯͷӡ༻ ͬ͘͟Γݟॴ • CIgemͷΞοϓσʔτͳͲɺݱͷWebΞϓϦέʔγϣ ϯͰඞཁͳ׆ಈʹ͍ͭͯղઆ͍ͯ͠ΔΑ • ୯ʹRailsΛDockerͰಈ͔͢ɺͰͳ͘Ωϟογϡͷར༻ํ
๏ͳͲݱ࣮Λݟਾ͑ͨίϯςφӡ༻ํ๏ͳͲͷղઆΛͯ͠ ͍ΔΑ
Part5ɹΤΩεύʔτRails 11ষɹෳࡶͳυϝΠϯΛදݱ͢Δ 12ষɹෳࡶͳϢʔεέʔεΛ࣮ݱ͢Δ 13ষɹෳࡶͳσʔλૢ࡞Λ࣮͢Δ ͬ͘͟Γݟॴ • Ͳͷষʮී௨ʹRailsΛ։ൃ͍ͯ͠ΔͱΩπ͘ͳͬͯ͘ Δʯ࣌ͷͲͷΑ͏ʹίʔυΛղ͖΄͙͍ͯ͘͠ͱྑ͍͔ղ આ͍ͯ͠ΔΑ
ύRails/ύʔϑΣΫτRails ͳͲͱఴ͑ͯײΛπΠʔ τ͍͚ͯͨͩ͠Δͱஶऀ͕ͨͪتͼ·͢ʂ☺ ·ͨɺޡࣈࣈͳͲΛൃݟͨ͠ࡍgihyo͞Μͷα ϙʔτϖʔδ͔ɺஶऀͬΆ͍ਓʹڭ͑ͯΒ͑Δͱॿ ͔Γ·͢ ࠷ޙʹ