Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Rails × パターン / Rails meets Patterns
Search
Junichi Kobayashi
December 08, 2018
Technology
2.7k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rails × パターン / Rails meets Patterns
Junichi Kobayashi
December 08, 2018
More Decks by Junichi Kobayashi
See All by Junichi Kobayashi
XP をバイブルにする事業部で10年働いた新卒が語りたい『Tidy First?』/ Put your understanding into the code
junk0612
0
100
rage against annotate_predecessor
junk0612
0
280
The Implementations of Advanced LR Parser Algorithm
junk0612
3
2.8k
「今のプロジェクトいろいろ大変なんですよ、app/services とかもあって……」/After Kaigi on Rails 2024 LT Night
junk0612
6
2.9k
LR で JSON パーサーを作る / Coding LR JSON Parser
junk0612
2
2k
「ナントカLR」を整理する / Clarifying LR Algorithms
junk0612
1
730
From LALR to IELR: A Lrama's Next Step
junk0612
2
5.3k
RubyConf Taiwan / Understanding Parser Generators surrounding Ruby with Contributing Lrama
junk0612
2
7.2k
LL法とLR法の違いは?調べてみた!-完全版-/Comparing LL and LR parse algorithm -EX Edition-
junk0612
0
2.6k
Other Decks in Technology
See All in Technology
あけおめLINE 傾向とその対策
nasa9084
0
330
CI/CDではもう遅い - 人とAIが迂回しないDevSecOps Verify基盤の再設計 -
kintotechdev
0
250
「どのログを見ればいい?」 から始めた サーバーレス障害解析
y_waka1
1
150
C#コードの結合を可視化する Roslyn解析による設計改善と リファクタリング判断
dora56
0
730
ほんとうの信頼性はヒーローが死んでからはじまる / True reliability begins after the hero dies
vtryo
0
120
今話題のAI「Jev」って何? 宇宙最速で学ぶ会
minorun365
PRO
34
22k
開発投資の期待値を上げるプロダクトロードマップづくり ~プロダクトエンジニアが越境して事業を伸ばす~
kekekenta
1
250
時うどん〜Socket.getifaddrsで学ぶネットワーク編 / Tokiudon: The Socket.getifaddrs Edition
coe401_
4
270
Antigravity SDK for the Java Developer
glaforge
0
210
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
310
サーバーレスをどこまで使う? WebRTC対戦ゲームで選んだVPSとの共存設計
kaidouji85
0
440
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
16
120k
Featured
See All Featured
Joys of Absence: A Defence of Solitary Play
codingconduct
1
530
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
420
Docker and Python
trallard
47
4.2k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
470
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
490
How GitHub (no longer) Works
holman
316
150k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
510
Six Lessons from altMBA
skipperchong
29
4.5k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
530
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Designing for Performance
lara
611
70k
Transcript
3BJMTʷύλʔϯ גࣜձࣾӬγεςϜϚωδϝϯτΞδϟΠϧࣄۀ෦ খྛ७Ұ !KVOL 3BJMT%FWFMPQFST.FFUVQ%BZ/PVWFMMF7BHVF גࣜձࣾυϦίϜ༷ 4BU
খྛ७Ұ !KVOL
ࣗݾհ • !KVOL • גࣜձࣾӬγεςϜϚωδϝϯτ • ԻήʔϚʔɺϘʔυήʔϚʔ
• ʰ,BUBͷ࡞ΓํʱCZ!DPMPSCPY • ϥϯνεϙϯαʔ ‣ -JOLVQͷ͝հ • ʰχϟʔ2-ษڧձʱCZ!LFOqBO એ
None
None
͋Γ͕ͱ͏͍͟͝·͢
ͷഎܠ • ϏδωεྖҬλʔήοτ͕ҟͳΔ༷ʑͳ ϓϩδΣΫτ • ڞ௨ͯ͠ݟ͔ͭΔύλʔϯ͕͋Δ
3BJMTʷύλʔϯ • 3BJMTϓϩδΣΫτͰΑ͘ΘΕ͍ͯΔ ઃܭɾ࣮ͷύλʔϯͷ • ର ‣ αʔϏεاۀʹۈ͍ͯ͠Δ एखͷํ ‣
ύλʔϯʹҰՈݴ͋Δ ϕςϥϯͷํ
ύλʔϯ ύλϯ • ʮ͋Δঢ়گʹ͓͍ͯ͋ΔΛղܾ͍ͨ͠ ͱ͖ʹΑ͘ΘΕΔखஈͷҰͭʯ • ιϑτΣΞͷจ຺ʹݶΒΕͳ͍ DGύλϯɾϥϯήʔδ •
ιϑτΣΞք۾ͰʮσβΠϯύλʔϯʯ ͕༗໊
୯Ұςʔϒϧܧঝ • ग़యʰΤϯλʔϓϥΠζΞϓϦέʔγϣ ϯΞʔΩςΫνϟύλʔϯʱ • త03Ϛοϐϯάʹ͓͍ͯΫϥεܧঝ Λσʔλϕʔε্Ͱදݱ͍ͨ͠ • എܠϞσϧؒʹܧঝ͕ؔ͋Γɺؔ࿈͢ ΔϞσϧ͔Βಁաతʹѻ͍͍ͨ
୯Ұςʔϒϧܧঝ
୯Ұςʔϒϧܧঝ • ࣮ͭͷςʔϒϧʹΫϥεΛද͢ ΧϥϜΛ࡞Δ • 3BJMTͰͷ࣮Ϋϥεͷςʔϒϧʹ UZQFΧϥϜΛՃ͢Δ
୯Ұςʔϒϧܧঝ • ར ‣ αϒΫϥεͷՃʹରͯ͠ॊೈʹରԠͰ͖Δ ‣ 3BJMTͷωΠςΟϒαϙʔτ͕͋Δ • ܽ ‣
ςʔϒϧ͕େ͖͘ͳΓ͍͢ ॎʹԣʹ ‣ αϒΫϥεͷΧϥϜʹରͯ͠/05/6-- Λ͔͚ΒΕͳ͍ • ؔ࿈Ϋϥεςʔϒϧܧঝ۩Ϋϥεܧঝ
ϑΥʔϜΦϒδΣΫτ • ग़యෆ໌ • తෳͷϞσϧʹ·͕ͨΔॲཧ ॲཧʹಛ༗ͷόϦσʔγϣϯͳͲΛ͍ͨ͠ • എܠϑΝοτίϯτϩʔϥΛආ͚ͯ Ϟσϧʹॻ͍͍ͯ͘ͱɺϞσϧ͕ͲΜͲΜ ංେԽͯ͠͠·͏
ϑΥʔϜΦϒδΣΫτ • ࣮Ұ࿈ͷखଓ͖ΛΦϒδΣΫτʹ ·ͱΊΔ • 3BJMTͰͷ࣮ "DUJWF.PEFM.PEFMΛ͏ͱ όϦσʔγϣϯΛ"3ͱಉ͡ཁྖͰ ॻ͚ͯศར
ϑΥʔϜΦϒδΣΫτ • ར ‣ ॲཧͷهड़͕Օॴʹ·ͱ·ΓɺϞσϧʹ ίϯτϩʔϥʹෛ୲Λ͔͚ͳ͍ ‣ ॲཧಛ༗ͷόϦσʔγϣϯΛॻ͚Δ • ܽ
‣ ํΛߟ࣮͑ͯ͠ͳ͍ͱɺ͋ͬͱ͍͏ؒʹ BQQGPSNTԼ͕ΧΦεԽ͢Δ
צఆ • ग़యʰΞφϦγεύλʔϯʱ • తܾࡁγεςϜͳͲͰ͓ۚͷग़ೖΓΛ ཧ͍ͨ͠ • എܠ͓ۚΛऔΓѻ͏γεςϜͳͷͰɺ ॲཧΛݫີʹߦ͍ͭͭཤྺΛ͍ͨ͠
צఆ
צఆ • ࣮֤औҾΛ·ͱΊΔϞσϧͱऔҾͷ ֤߲Λ࣋ͭϞσϧΛ࡞Δ • 3BJMTͰͷ࣮߲ͷ߹ܭ͕ʹͳΔ ͜ͱ"3ͷόϦσʔγϣϯͰ ࣮Ͱ͖Δ
צఆ • ར ‣ ͓ۚͷग़͠ೖΕΛձܭతʹද͢͜ͱ͕Ͱ͖Δ ‣ ʮϞϊͷग़͠ೖΕʯΛ͍ͬͯΔͷͰ ࡏݿཧͳͲʹԠ༻͕Ͱ͖Δ • ܽ
‣ ձܭͷ͕ࣝඞཁ ‣ ʮΓ͗͢ʯʹҙ
0OFNPSFUIJOH
ύλʔϯதಟ • ৽͍͜͠ͱΛֶͿͱɺͦΕ͕ԿͰ ղܾͰ͖ΔΑ͏ʹݟ͑ͯ͘Δ • ඞཁͳഎܠٞΛҰແࢹ͠ɺ ղܾͰ͖Δ͔Βͱಋೖͯ͠ɺ ͋ͱͰਏ͍͜ͱʹͳΔ
ύλʔϯதಟ • ʮࣗͷͬͨؒҧ͍͔ΒֶͼɺೋͱͦΕΛ܁ Γฦͨ͘͠ͳ͍͔ΒɺγεςϜͷ࠷ॳ͔ΒϑϨΩ γϒϧͰؤڧͳઃܭͱͳΔΑ͏ɺΒେมͳ࿑ ྗΛ͗ࠐΉɻ೦ͳ͜ͱʹɺγεςϜ͕ͦͷϨ ϕϧͷϑϨΩγϏϦςΟͱؤ݈͞Λඞཁͱ͠ͳ͍ ͳΒɺͦͷ࡞ۀແҙຯͳফͱͳΔ͜ͱʹɺ Βؾ͍͍ͮͯͳ͍ʯ ‣
ʰΤΫετϦʔϜɾϓϩάϥϛϯάݕূฤʱ ୈষύλʔϯͱ91