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
「ビジネスロジック」と「例外」
Search
Magnolia.K
October 26, 2024
5k
9
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
「ビジネスロジック」と「例外」
「秋の旬なアーキテクチャLT会」での発表資料です
「ビジネスロジック」と「例外」、というテーマでまとめてみました
Magnolia.K
October 26, 2024
More Decks by Magnolia.K
See All by Magnolia.K
吉祥寺.pmは1つじゃない — 複数イベント並走運営の12年 —
magnolia
0
1.4k
吉祥寺.pm運営の動機、 得られた学び
magnolia
1
920
これからの吉祥寺.pmについて
magnolia
0
770
大吉祥寺.pm 2025 キーノート
magnolia
1
1.3k
イベント運営から見た登壇者への期待
magnolia
7
3.9k
「吉祥寺.pm」というIT勉強会を 10年間続けてきた話
magnolia
0
1.2k
吉祥寺.pm18オープニングトーク.pdf
magnolia
0
2k
設計のための、問題の捉え方〜ドメイン知識の暗黙知を形式知に〜(まとめ版)
magnolia
36
13k
吉祥寺.pmというテックイベントを4年間続けてきた話
magnolia
0
960
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Building AI with AI
inesmontani
PRO
1
1.2k
Skip the Path - Find Your Career Trail
mkilby
1
220
Amusing Abliteration
ianozsvald
1
290
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
470
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Six Lessons from altMBA
skipperchong
29
4.5k
Speed Design
sergeychernyshev
33
2.1k
Transcript
Magnolia.K 2024/10/26 ʮϏδωεϩδοΫʯͱʮྫ֎ʯ ळͷ०ͳΞʔΩςΫνϟLTձ
ʣ͜͜Ͱͷʮྫ֎ʯͱɺ ݴޠػೳ͕ఏڙ͢Δྫ֎ॲཧػߏ ʢྫUSZDBUDI fi OBMMZʣͰ͋Γ·ͤΜ
ͯ͞ɺօ͞Μʮࣄॲཧʯ͖Ͱ͔͢
w ৫Λࢧ͑Δʮۀʯɺͨ͘͞Μͷϧʔϧͷ্ʹΓཱ͍ͬͯΔ w ͔͠͠ɺͯ͢ͷۀʹɺͯ͢ͷϧʔϧ͕ద༻͞ΕΔΘ͚Ͱͳ͍ w ྔʹؔΘΒͣɺՁ͋ΔlۀzͳΒɺରԠ͢Δ͔͠ͳ͍ w ͦΜͳதɺΊͬͨʹൃੜ͠ͳ͍ۀʮྫ֎ʯͱݺΕΔΑ͏ʹͳΔ ۀͱɺϧʔϧͱɺྫ֎
Ε͍͕͍ ―͙Θ͍ ʲྫ֎ʳ ී௨ͷྫ͔ΒͣΕ͍ͯΔ͜ͱɻݪଇʹ͋ͯ·Βͳ͍͜ͱɻ·ͨɼͦ͏͍͏ͷɻ ʮܽ੮Λ―ͱͯ͠ೝΊΔʯʮ―ͳͯ͘·Δ๏ଇʯʮ―ͷͳ͍نଇͳ͍ʯ ʮεʔύʔେࣙྛʯΑΓ
ࣗݾհ • ໊લɿMagnolia.K • ΞΧϯτɿX(Twitter) @magnolia_k_ ٢ࣉ.pmͷதͷਓ ઃܭφΠτͷதͷਓ YAPC::Hakodate 2024ελοϑ
Blog: https://blog.magnolia.tech/ ओʹΤϯλʔϓϥΠζϏδωεΞϓϦέʔγϣϯͷ ઃܭʹؔ৺͕༗Γ·͢
ʮࣄॲཧʯɺʮྫ֎ʯͩΒ͚
w ྺ࢙͋ΔॏཁۀɺΊͬͨʹى͖ͳ͍ʮྫ֎ʯͷੵΈॏͶͰͰ͖͍ͯΔ w ʮྫ֎ʯͷذ͕Ұͭ૿͑ΔͱɺΈ߹Θͤͷύλʔϯഒʹ૿͑Δ w ॾઆ͋Γ·͕͢ʜ w ۀྔͰݟΔͱɺʮ௨ৗʯͷۀׂׂ͕ɺʮྫ֎ʯͷۀׂ w ϧʔϧྔͰݟΔͱɺʮ௨ৗʯͷۀׂɺʮྫ֎ʯͷۀׂ
w ʮྫ֎ʯɺʑ૿͍͑ͯ͘ w ʮ௨ৗʯ͕ɺ͋Δʮྫ֎ʯʹมΘ͍ͬͯ͘͜ͱ͋ΔʢڥͷมԽʣ ۀͱɺϧʔϧͱɺʮྫ֎ʯ
w ۀΛੳ͢Δ্Ͱɺʮ௨ৗʯͱʮྫ֎ʯͷ͚ํ͕ϙΠϯτ w ͚ํɺʮྔʯͱɺʮۀͷӨڹʯͷόϥϯε w ͭ·ΓɺʮϏδωεΠϯύΫτʯ w ྔʜʢવ͚ͩͲʣൃੜ͕֬গͳ͘ɺΊͬͨʹى͖ͳ͍ͳΒʮྫ֎ʯ w ۀͷӨڹʜൃੜͷ͕֬গͳͯ͘ɺۀӨڹ͕େ͖͘ɺܦӦͷ
ؔ৺͕େ͖͚Εʮྫ֎ʯͱݴΘͳ͍ w ݁ہɺྫ֎͔൱͔ͷڥքʮܦӦͷؔ৺ʯͷ߹͍ͱݴ͑Δ ۀͱɺϧʔϧͱɺʮྫ֎ʯ
ͭ·ΓɺʮۀʯΛγεςϜʹམͱ͠ࠐΉ͏͑Ͱɺ ͳʹΛʮྫ֎ʯͱ͢Δ͔ͱͯॏཁ
มΘΓɺʮϏδωεϩδοΫʯʹ͍ͭͯ
ೖྗ ग़ྗ ೖྗ ೖྗ ग़ྗ ܭࢉ ϏδωεϩδοΫͷߏ ϏδωεϩδοΫʜۀͰٻΊΒΕΔʮग़ྗʯΛɺʮೖྗʯͱʮܭࢉʯ͔Β ٻΊΔͨΊͷϓϩάϥϜʢͱɺ͜͜Ͱఆٛ͢Δʣ w
ʮग़ྗʯɺۀͷٻΊΔʮਫ਼ʯΛຬ͍ͨͯ͠Δ͜ͱ͕ٻΊΒΕΔ w ʮग़ྗʯͷʮਫ਼ʯɺʮೖྗʯͱʮܭࢉʯʹΑܾͬͯ·Δ
w Ұൠతʹɺʮྫ֎ʯͷରԠΛ૿ͤɺग़ྗͷʮਫ਼ʯ্͕Δ w ΑΓଟ͘ͷೖྗ߲Λड͚͚Δʜ w ΑΓϨΞͳఆ݅ʗܭࢉ݅ͷରԠʜ ϏδωεϩδοΫͱɺʮྫ֎ʯ
w ʮϏδωεΠϯύΫτʯΛߟ͑Δͱɺʮྫ֎ʯؚΊͯશ෦ͷύλʔϯΛ ཏ͢ΔΑ͏ʹɺશ෦࣮͍ͨ͠ʂ w ͔͠͠ʮ௨ৗʯͷίʔυͱʮྫ֎ʯͷίʔυ͕ີ݁߹ʹͳΕͳΔ΄Ͳɺ ίʔυྔ૿͑ɺෳࡶԽ͠ɺ࣭อূ͘͠ͳΓɺϦϦʔεΕΔ w ۀͷʮਫ਼ʯ্͍͕͛ͨɺ࣌ؒ༗ݶ w Ͳ͏͢Δʁ
ϏδωεϩδοΫͱɺʮྫ֎ʯ
ʮ࣭ͱεϐʔυʢAWS Dev Day 2023 Tokyo ಛผฤɺ࣭ٙԠ༻ࢿྉ͖ʣʯΑΓ
Α͠ʮྫ֎ʯύλʔϯͷ࣮ͳΜͯࢭΊͪΌ͑ʂ
ͰɺͦͷۀΊͬͨʹແ͍ͱݴͬͯ γεςϜ͔Βͬͯɺʮଘࡏʯ͠·͢Α
ઃܭઓུ ʮ௨ৗʯͱʮྫ֎ʯͷؒʹɺ ҰఆͷʮڑʯΛอͭ
ૄ݁߹ʹ͢Δ
ʮྫ֎ʯΛγεςϜͰѻΘͳ͍ ϑϥάɺܯࠂͰཧ͢Δ ͨ͠ઐ༻ςʔϒϧͰཧ͢Δ ͨ͠ઐ༻γεςϜͰཧ͢Δ ʮྫ֎ʯΛʮ௨ৗʯ͔Β͢ΔͨΊͷɺl͍͔ͭ͘zͷํ๏
ʮྫ֎ʯΛγεςϜͰѻΘͳ͍ ӡ༻͢Δਓ͕lؾΛ͚ͭΔz ʮ͋ʂ͜ͷਓɺಛผѻ͍͠ͳ͍ͱʯ ʮྫ֎ॲཧͷॻྨ࡞ͬͯɺ্࢘ʹܾࡋΒͬͯʜʯ ʮ͋ɺͦͷ··௨ͪ͠Όͬͨʂʯ ֎͚ͷʮ&YDFMͰͷཧʯ͕ര͢Δ ࣍ୈʹɺ߹ੑ͕औΕͳ͘ͳΔͳΔʢۀྔɺଐਓੑɺҙྗʜʣ
࡞ۀϛεɹˠɹܦӦϦεΫʂ
ϑϥάɺܯࠂͰཧ͢Δ ʮྫ֎ʹ֘͢Δʯͱ͍͏ࣄ࣮Λཧ͢ΔϑϥάΛ༻ҙ͢Δ ϑϥάཱ͕͍ͬͯΕɺʮܯࠂʯΛग़͢ ٯʹɺʮܯࠂʯΛग़ͨ͠Ҏ߱ɺʮϑϥάͰཧ͢Δʯ༗Δ ͔͠͠ɺۀΛߦ͢ΔͨΊʹඞཁͳใ͕ෆ͢Δ͜ͱ͕ଟ͍ ͬͺΓʮ&YDFMͷཧʯ͕ര
߹ੑͱɺҰ؏ੑ͕՝ ʢϑϥάͷམͱ͠Εͱ͔ɺ&YDFMཧͷߋ৽Εͱ͔ʣ ׂͱΑ͋͘ΔʢϝϞཝʹຊޠͰॻ͍͓ͯ͘ɺΈ͍ͨͳͷؚΉʣ
ͨ͠ઐ༻ςʔϒϧͰཧ͢Δ ʮྫ֎ʹؔ͢ΔهʯΛཧ͢Δઐ༻ͷςʔϒϧΛ༻ҙ͢Δ ߹ΘͤͯϩδοΫ͢Δ ʮ௨ৗʯͷςʔϒϧϩδοΫͱɺҰ؏ੑ߹ੑͷϨϕϧΛམͱ͢ ʢͦ͏͠ͳ͍ͱɺྫ֎͕ૄ݁߹ʹͳΒͳ͍ʣ w ྫ͑ɺࢀরͰ͖Δ͚Ͳɺొɾߋ৽ύονͰ͔͠Βͳ͍ͱ͔ w
ྫ͑ɺʮ௨ৗʯͷςʔϒϧΛߋ৽ͯ͠ɺ࿈ಈߋ৽͠ͳ͍ͱ͔ w ྫ͑ɺʮ௨ৗʯͷςʔϒϧɾϩδοΫ͔ͳΒͣվम͢Δ͚Ͳɺ ʮྫ֎ʯͷվम͠ͳ͍ͱ͔ ͜ΕΑ͋͘ΔʜͰҰ؏ੑͱ߹ੑͷ؍ͰϦεΫΛݟۃΊͯ
ͨ͠ઐ༻γεςϜͰཧ͢Δ ʮྫ֎ʯΛॲཧ͢ΔͨΊͷɺઐ༻γεςϜΛߏங͢Δ ݩͷγεςϜΑΓϥΠτͳߏʹͳΔʢ͕͋Δʣ ͭ·ΓɺʮγεςϜͷߗ͞ʯͷҧ͍͕ग़Δʢग़͞ͳ͍ͱҙຯ͕ͳ͍ʣ ྫ͑ɺՄ༻ੑ͕͍ͱ͔ɺӡ༻͕࣌ؒݶΒΕΔͱ͔ɺӡ༻͢Δ෦ॺ ͕ݶΒΕΔͱ͔ʢຊ͚ࣾͩͱ͔ʣ
ΓɺҰ؏ੑɾ߹ੑ՝ʹͳΔ ʢͰɺ͞Ε͍ͯΔͱɺҙ֎ͱؾΛ͚ͭΔ৺ཧ͕ಇ͘ʜ ʣ
ຊͷ·ͱΊ w ݱ࣮ͷۀɺͨ͘͞Μͷʮྫ֎ʯͷੵΈॏͶͰෳࡶԽ͢Δ w ۀΛཱͤ͞ΔͨΊʹඞཁͳʮਫ਼ʯ͕͋Δ w શ෦࣮͍͕ͨ͠ʮྫ֎ʯ͕ଟ͍ͱࢦؔతʹίʔυ૿͑ɺෳࡶԽ͢Δ w ʮ௨ৗʯͱɺʮྫ֎ʯΛ্खͯ͘͠ɺෳࡶΛݶఆ͍ͯ͜͠͏ w
ͰɺৗʹҰ؏ੑͱ߹ੑͷϦεΫΛΕͣʹ
ઃܭʮҙਤΛࠐΊͯʯʮઓུతʹʯΓ·͠ΐ͏
࣍ճ༧ࠂ ʮϏδωεϩδοΫʹ͓͚ΔҰ؏ੑͱɺ߹ੑʯ ਓͷೝൣғʹݶք͕༗Γ·͢ɺͱ͍͏Ͱ͢
͓ͨͷ͠Έʹʂ
Ճίϯςϯπ ʮؔ৺ͷඇରশੑʯ
ؔ৺ͷඇରশੑ • ʮϏδωεͷؔ৺ʯvsʮۀͷཏੑʯ • ʮࠓՃ͠Α͏ͱ͍ͯ͠Δػೳʯvsʮطଘػೳͱͷ߹ੑʯ • https://blog.magnolia.tech/entry/2023/11/23/164403
None
ͬͱ্ख͘ɺతʹݴޠԽ͞Εͯͨ
2