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
Railsでアプリ開発を行った感想と今後の展望
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Akihiro Nakashima
October 31, 2019
Programming
0
240
Railsでアプリ開発を行った感想と今後の展望
Akihiro Nakashima
October 31, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
React Native × React Router v7 API通信の共通化で考えるべきこと
suguruooki
0
100
高速開発のためのコード整理術
sutetotanuki
1
410
Oxlint JS plugins
kazupon
1
1k
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
390
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
230
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
7
4k
AI によるインシデント初動調査の自動化を行う AI インシデントコマンダーを作った話
azukiazusa1
1
750
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
230
Claude Codeと2つの巻き戻し戦略 / Two Rewind Strategies with Claude Code
fruitriin
0
150
Featured
See All Featured
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
58
What does AI have to do with Human Rights?
axbom
PRO
0
2k
Typedesign – Prime Four
hannesfritz
42
3k
Side Projects
sachag
455
43k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
350
The Language of Interfaces
destraynor
162
26k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
58
50k
For a Future-Friendly Web
brad_frost
182
10k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Transcript
3BJMTͰΞϓϦ։ൃΛߦͬͨ ײͱ͜Ε͔Βͷల தౡത
ࣗݾհ w ࣛࣇౡେֶଔۀੜ w ݱࡏϑϦʔλʔ w d݄ʢେ໊ΤϯδχΞΧϨοδҰظੜʣ
ֶੜ࣌ w কདྷΓ͍ͨ͜ͱɺඪ͕ͳ͍ w ϓϩάϥϛϯάͳΜͷͨΊʹษڧ͢Δͷ͔Θ͔Βͳ͍ w త͕ͳ͍͔Βษڧ͢Δؾى͖ͳ͍ w ब׆ w
͜ͷ··Γ͍ͨ͜ͱ͕ͳ͍ঢ়ଶͰब৬͙ͯࣙ͢͠ΊΔͩ Ζ͏ͳʔ w ब׆ఘΊΔ
ϓϩάϥϛϯάͱग़ձ͏ ͍ͭͰಈ͚ΔΑ͏ʹஷ͚͍͔ۚͩͯͨͬͨ͠ɻ ελʔτ͓খݣ͍Ք͗ʜ
QSPHBUFͰIUNMDTT +BWB4DSJQUΛ࢝ΊΔ
ษڧΛ࢝ΊͯΈͯ ͋Εʁࢥͬͯͨͷͱҧ͏ʁ ʢ͍͍ҙຯͰʣ
w ͜ΕࣄʹͰ͖ͨΒʜ w ΤϯδχΞͱͯ͠ब৬͢Δ͜ͱΛܾҙɻ w ϓϩάϥϛϯάεΫʔϧͰ3BJMTΛѻ͍ͬͯΔͱ͜Ζ͕ଟ ͔ͬͨʢͱΓ͋͑ͣब৬͔ͨͬͨ͠ʣ
Ռ w ͓͢͢ΊͷຊΛϦετԽͯ͠ڞ༗͢ΔΞϓϦ 8FCMJT w IUUQTUIPVHIUGVMTIJCVTIJMPMJQPQJP w νʔϜ։ൃʢେ໊ΤϯδχΞΧϨοδʣ w
ࣛࣇౡͷόεϑΟογϯάίϛϡχςΟʔ pTIQPE w IUUQTpTIQPEIFSPLVBQQDPN w ݸਓ։ൃ
͜Ε͔Βͳʹ͠Α͏ʜ
(.0ϖύϘऔక$50 ܀ྛ݈ଠ͞Μ ͷॻ͍ͨϒϩά IUUQTUFDIQFQBCPDPN QSPQPTBMGPSQSPHSBNNJOHTDIPPMT
w ब৬׆ಈͰ(JU)VC্ʹެ։ͨ͠ίʔυ͕ըҰతͳͷʹ ͳͬͯ͠·͍ͬͯͳ͍͔ʁ ✴ ϑϨʔϜϫʔΫΛͬͨఆܕతͳΞϓϦέʔγϣϯͷίʔυͷΈ͕ࣔ͞Ε͍ͯΔ ✴ ͳͥͦΕΛ࡞Ζ͏ͱࢥͬͨͷ͔ʁ`Ϟνϕʔγϣϯͷ෦͕ݟ͑ͳ͍` w কདྷؒʹͳΔ͔͠Εͳ͍ਓ͕ຊʹΓ͍ͨ͜ͱ Կ͔ʁ
࠾༻ଆͷࢹ
b`ਓͱͳΓ``
܀ྛ݈ଠ͞Μ͕ఏҊ͢Δ͜ͱ w Ξτϓοτ ։ൃͨ͠ΞϓϦέʔγϣϯ ͨ͠ͷ͕ਓͱ ͳΓΛΕΔΑ͏ͳ༰ʹ·Ͱ։ൃΛਐΊΔ͜ͱ w ͦͷऔΓΈʹରͯ͠Μͩ࢟ɺͬͯΈͯײͨ͜͡ ͱɺ͔ͬͨ͠ͱ͜Ζɺͨ͠ͱ͜ΖɺऴΘͬͯΈͯ ಘΒΕͨ͜ͱɺࠓޙ՝ͱͯ͠औΓΜͰ͍͖͍ͨ͜ͱͳ
ͲΛࣗͷݴ༿Ͱදݱ
,SVCZ
ΞϓϦհ ݸਓ։ൃ w Γ͕͖ όεΓ w όεΓήʔϜੑ͕ߴ͍ w Γਓಉ࢜ͷϥΠόϧҙࣝߴ͍ʢࣗ
͚ͩʁʁসʣ w ࣛࣇౡʹ͓͍ͯόεΓͷਓޱগͳ͍ w খ͞ͳίϛϡχςΟʔͰͬͯΒ ͑ΔΑ͏ͳͷΛ։ൃ͔ͨͬͨ͠ɻ ։ൃͷಈػ
ٕͬͨज़ɾػೳ w ը૾ߘ "844 DBSSJFSXBWF w ߜΓࠐΈ 3BOTBDL
w ͍͍Ͷ w ϩάΠϯɺϩάΞτ EFWJDF w ϖʔδωʔγϣϯ LBNJOBSJ
͜͜·ͰͰ`ਓͱͳΓ` ݟ͑Δ͔ʁ
/P
bϞνϕʔγϣϯ`ɺ`ਓͱͳΓ` Λίʔυʹදͨ͢Ίʹ ԿΛ͢Ε͍͍ͷͩΖ͏ʁ ͦͦͳΜͰΞϓϦΛ։ൃ͢ΔΜͩΖ͏ʁ
ͨ͘͞Μͷਓʹͬͯ Β͏͜ͱ
Ϣʔβʔ͕ݟ͍͢6*ͩͬͨΓɺ ͬͯخ͍͠ػೳΛ͚ͭͨΓʜ
ͬͯخ͍͠ϙΠϯτ ‣ ࣮ࡁ w Γʹ্ख͍Լख͕ผ͠ʹ͍͘ 㾎 ϥϯΩϯάΛ͚ͭΔ͜ͱʹΑ্ͬͯख͍ਓ ͕͙͢Θ͔Δʢ݄͝ͱɺ͝ͱʣ w ͋ʔͬͯΔͳʔͲ͏ͬͯͬͨΜͩΖ
͏ʁ 㾎 ͬͨ࣌ͷઓུΛڭ͑ͯΒ͑Δ UBDUJDT ‣ ະ࣮ w ͦͷγʔζϯͷΕ͍͢ϧΞʔΞΫγϣϯͷ ͕Θ͔Δ 㾎 ͬͨਓͷใΛͱʹՌΛάϥϑԽ͢Δ 㾎 Կ݄͕ΕΔͱ͔ɺͲΜͳϧΞʔ͕ΕΔͱ ͔ w ڕͷډॴ͕Θ͔Δ 㾎 ϚοϓΛͬͯɺΕͨॴΛϙΠϯτ͢Δ
ࠓޙͷ՝
w Γ͕ిͷಧ͖ʹ͍͘ॴ͕ଟ͘ϖʔ δͷಡΈࠐΈ͕͍ ͳ͍ͥͷ͔ݕূͷඞཁ͕͋Δ 㾎SFOEFSɺύʔγϟϧͷಡΈࠐΈ 㾎ը૾ͷ༰ྔ͕େ͖͗͢Δ ͕͜͜Ұ൪Ͱ ͔ͦ͏ 㾎Πϯϑϥ
IFSPLV ͷɻαʔόʔ͕ ւ֎ʹ͋ΔͨΊϨεϙϯε͕͍ "84 Λ͏ 㾎ϖʔδભҠ͕ଟ͍ɻ "KBYΛ͏ 1BHF4QFFE*OTJHIUTΑΓ
w $36%Ҏ֎ͷػೳ͕ѹతʹগͳ͍ 㾎ະ࣮ͷػೳΛՃ͢Δ w ςετΛॻ͍ͯͳ͍ 㾎3TQFDͰ͔͘ʢࠓ͜͜ʣ
ࢼߦࡨޡ͢Δ͜ͱ͕େࣄʂʂ
None
+BWBTDSJQUͰ ϑϩϯτΛ͍ͬͯ͡Έ͍ͨ
+BWB4DSJQUͷϑϨʔϜϫʔΫ w 3FBDU w ݫີʹ6*ϥΠϒϥϦɻϑϨʔϜϫʔΫ͡Όͳ͍ w 7VF w "OHVMBS
7VFPS3FBDU
ࢲ͕3FBDUΛબΜͩཧ༝
ͪ͜ΒͷRJJUBͷهࣄ IUUQTRJJUBDPNZPJDIJXPJUFNT CFBCGCF
ͳΜ͔৭ʑͰ͖ͦ͏
3FBDUͬͯԿ͕Ͱ͖Δͷʁʁ
w .7$ͷ7 WJFX ͷ෦Λ࡞ΕΔ w 6*ͷύʔπΛ࡞Ͱ͖Δ w ߴͳXFCϖʔδΛ࡞Ͱ͖Δ w 4JOHMF1BHF"QQMFDBUJPO
41" αʔόʔϨεͳXFCϖʔδ͕ ྲྀߦͬͯΔΒ͍͠ w K2VFSZΈ͍ͨͳΞχϝʔγϣϯ͕ಘҙͳΘ͚Ͱͳ͍ w 'BDFCPPL͕։ൃ w 'BDFCPPL "50.ͷ6*3FBDU
3FBDUΛ͏ϝϦοτ
Ծ%0.͕ߴ Ծ%0. ͦͦ%0.ͬͯԿ
%0. w IUNMͷλά EJWλάɺQλάɺJNHλά ͱ͔ʹΞΫη ε͢ΔͨΊͷΈͷ͜ͱ w %0.πϦʔߏʹͳ͍ͬͯΔ
IUUQQJZPKTDPN EPNIUNM
Ծ%0. w Ծ%0.ʁʁ w %0.ͷઃܭਤ w ͷIUNMλάΑ͏ͳͷ͕Ծ%0. w 3FBDU%0.SFOEFS͕࣮ࡍͷ%0.Λউखʹߏͯ͘͠ΕΔ https://qiita.com/naruto/items/fdb61bc743395f8d8faf
ίϯϙʔωϯτ
Ծ%0.ͳͥߴʁ
w πϦʔߏͷೋͭͷࠩΛܭࢉͯͦ͠ͷ͚ͩঢ়ଶભҠΛىͤ͜ ܭࢉίετ͕গͳͯ͘ࡁΉΑͶɻͱ͍͏ߟ͑ํɻ w ઃܭͱཱ͕྆͢Δ w Ծ%0. w Ծ%0.Ͱઃܭ w
ઃܭਤΛͱʹ%0.Λ࡞ w ϦΞϧͳ%0. w ঢ়ଶભҠ͕ى͜ΔͨͼʹຖճҰ͔Β%0.Λߏ͢Δ
3FBDUνϡʔτϦΞϧ ΛͬͯΈͨ
w ίϯϙʔωϯτ w 6*Λίϯϙʔωϯτͱ͍͏෦͝ͱʹ͚͍ͯΔ w ίϯϙʔωϯτQSPQTΛड͚औΔ w ઃܭਤͷதͷ෦ͷΑ͏ͳͷ w ίϯϙʔωϯτͷதͷSFOEFSͰϏϡʔͷ֊ߏΛฦ͢
w SFOEFSͷத w +49 w +49ͰIUNMͷΑ͏ͳه๏ͰWJFXΛهड़Ͱ͖Δ w தׅހΛ͏͜ͱʹΑͬͯ+BWBTDSJQUॻ͚Δ w TUBUF w ίϯϙʔωϯτͷதͷঢ়ଶΛ֮͑ͤ͞Δ
ײ
w 3FBDUͰWJFXͰඳը͢Δ·ͰͷྲྀΕ͕Θ͔ͬͨ w ίϯϙʔωϯτ TUBUF QSPQTͳͲͷ֓೦తͳ෦ w +4ͷॻ͖ํ͕Θ͔Βͳ͍ w จ๏
w +4΄ͱΜͲॻ͍ͨ͜ͱͳ͍͔Β׳Ε͕ඞཁ͔ͳʁ w 3BJMTͰΞϓϦ։ൃ࢝Ίͨ࣌͜Μͳײ͔ͩͬͨ͡Βා͘ ͳ͍