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
設計ナイト2022 トランザクションスクリプト
Search
Shinpei Maruyama
June 14, 2022
Programming
12
3.5k
設計ナイト2022 トランザクションスクリプト
Shinpei Maruyama
June 14, 2022
Tweet
Share
More Decks by Shinpei Maruyama
See All by Shinpei Maruyama
過去や未来を扱うのは難しい? 過去と未来に立ち向かうための勘所
shinpeim
3
3.6k
Ruby (off|with) the Rails
shinpeim
20
5k
綱渡りバッチ脱出大作戦
shinpeim
3
3.5k
Building native apps with scala.js
shinpeim
2
1.3k
今あえてDRY原則に向き合う
shinpeim
51
560k
Nekogata Drum Sequencer written in Scala.js
shinpeim
2
3.9k
複雑なJavaScriptアプリケーションに立ち向かうためのアーキテクチャ
shinpeim
36
15k
Using Scala.js with the JavaScript ecosystems
shinpeim
0
2.3k
Vue.jsで実現するMVVMパターン Fluxアーキテクチャとの距離
shinpeim
22
32k
Other Decks in Programming
See All in Programming
富山発の個人開発サービスで日本中の学校の業務を改善した話
krpk1900
5
400
PRレビューのお供にDanger
stoticdev
1
220
仕様変更に耐えるための"今の"DRY原則を考える
mkmk884
8
2.8k
Domain-Driven Transformation
hschwentner
2
1.9k
CloudNativePGを布教したい
nnaka2992
0
100
CDK開発におけるコーディング規約の運用
yamanashi_ren01
2
200
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
830
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
600
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1.1k
AI Agent系IDEを使って 開発生産性を爆アゲする
ouchi2501
1
100
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
280
XStateを用いた堅牢なReact Components設計~複雑なClient Stateをシンプルに~ @React Tokyo ミートアップ #2
kfurusho
1
950
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
74
9.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Speed Design
sergeychernyshev
27
800
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
500
Why Our Code Smells
bkeepers
PRO
336
57k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
For a Future-Friendly Web
brad_frost
176
9.6k
The Pragmatic Product Professional
lauravandoore
32
6.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Transcript
!TIJOQFJ ʮ%%%ͱ͔ΫϦʔϯΞʔΩςΫνϟͱ͔ϚΠΫϩαʔ Ϗεͱ͔Ͳ͏Ͱ͍͍͔Βͱʹ͔͘ϩάݟͯTFOUSZݟ ͯEBUBEPHݟͯཉ͍͠ʯ !POJHSB@ ɹΛཱͤ͞Δ !ઃܭφΠτʮτϥϯβΫγϣϯεΫϦϓτʯ
IUUQTUXJUUFSDPNPOJHSB@TUBUVT ಉ྅ͷπΠʔτ
ࣗݾհ w ຊۀࣗশϛϡʔδγϟϯͷޙஉੑ w ϑϧλΠϜͷ෭ۀͰ$MBTTJͱ͍͏ձࣾͷ71P5 w 4DBMB͖ w σʔλϞσϦϯά͖ w
υϝΠϯϞσϦϯά͖
"ύʔτ
IUUQTUXJUUFSDPNPOJHSB@TUBUVT
Θ͔Δ ઃܭτʔΫ͔ͬΓͬͯͳ͍Ͱ γεςϜΛӡ༻͠Ζ ʢઃܭφΠτͱͳΜͩͬͨͷ͔ʣ
2 Ͳ͏Ͱ͍͍ͬͯͨ͋͜ͳ͍ͩΖ
" ͦΕͦ͏͕ͩ ʮͲ͏Ͱ͍͍ʯ ͬͯݴ͑Δ͕݅͋Δ
2 ͡Ό͋݅Λຬͨͨ͠Β τϥϯβΫγϣϯεΫϦϓτͰ͑͑Μ͔ʁ
" ͑͑ ͦͷ݅ͱʁ
5Y4DSJQU74%PNBJO.PEFMʁ w 5Y4DSJQUͱ%PNBJO.PEFMΑ͘ೋ߲ରཱͱͯ͠ѻΘΕΔɻ w ͜͜Ͱݴ͏%PNBJO.PEFMͬͯͷ͍ΘΏΔ%%%จ຺ͷͭͰ w %#͔Βಠཱͯͯ͠ w ϏδωεϩδοΫʢʁʣΛ00Ͱʢʁʣදݱͨ͠ͷ w
͔͠͠ຊʹ͜ΕΒೋ߲ରཱ͔ʁ5Y4DSJQUѱͳͷ͔ʁ w ࠓ͜ͷΜͬ͘͡Γߟ͍͑ͨ w ·ͣͦΕͧΕͷಛΛ͓͞Β͍
5Y4DSJQU74%PNBJO.PEFMʁ w 5Y4DSJQU w Ϣʔβʔ͔ΒͷΞΫγϣϯͱରԠͨ͠ϩδοΫ w %#ΞΫηεϏδωεϩδοΫʢʁʣόϦσʔγϣϯʢʁʣશ෦Δ w ͏શ෦͍͋ͭҰਓͰ͍͍Μ͡Όͳ͍͔ͳ
5Y4DSJQU74%PNBJO.PEFMʁ w %PNBJO.PEFM w ϢʔβʔͷΞΫγϣϯͱରԠͰͳ͍ w %#ΞΫηε͠ͳ͍ w όϦσʔγϣϯʢʁʣ͠ͳ͍ w
"MXBZT7BMJE%PNBJO.PEFMͬͯͭͶ w ͱ͍͑ʮಥ͖߹ΘͤΤϥʔʯͬͯͭ"MXBZT7BMJEʹͰ͖ΜͷΑ w ࠓճ͜ͷείʔϓʹೖΕͳ͍
5Y4DSJQU74%PNBJO.PEFMʁ w 5Y4DSJQU 3FRVFTU 5Y4DSJQU 3FTQPOTF 7BMJEBUJPO %# "DDFTT #VTJOFTT
-PHJD %# "DDFTT
5Y4DSJQU74%PNBJO.PEFMʁ w %PNBJO.PEFM 3FRVFTU 6TFDBTF 3FTQPOTF 3FQPTJUPSZ &OUJUZ %# "DDFTT
#VTJOFTT -PHJD 0SDIFTUSBUF 7BMVF0CKFDU #VTJOFTT -PHJD %PNBJO4FSWJDF #VTJOFTT -PHJD
5Y4DSJQU74%PNBJO.PEFMʁ w 5Y4DSJQU 3FRVFTU 5Y4DSJQU 3FTQPOTF 7BMJEBUJPO %# "DDFTT #VTJOFTT
-PHJD %# "DDFTT FBTZͰ͏Ε͍͠
5Y4DSJQU74%PNBJO.PEFMʁ w %PNBJO.PEFM 3FRVFTU 6TFDBTF 3FTQPOTF 3FQPTJUPSZ &OUJUZ %# "DDFTT
#VTJOFTT -PHJD 0SDIFTUSBUF 7BMVF0CKFDU #VTJOFTT -PHJD %PNBJO4FSWJDF #VTJOFTT -PHJD TJNQMFʹ Ͱ͖ͯ͏Ε͍͠ʂʂ
IUUQTUXJUUFSDPNLBXBTJNBTUBUVT
None
LBXBTJNB͞Μ͕ͥΜͿॻ͍ͯͨ
"ύʔτ·ͱΊ w 5Y4DSJQUJTFBTZCVUTPNFUJNFTDPNQMFY w 5Y4DSJQUɺѱऀʹ͞Ε͕͚ͪͩͲɺৗʹ5Y4DSJQU͕ѱͳΘ͚Ͱͳ͍ɻ w ेʹ4JNQMFͳϢʔεέʔεͰɺ5Y4DSJQUͰ4JNQMF &BTZ͕࣮ݱͰ͖ͯ͏ Ε͍͠ w
ٯʹ4JNQMFͳͷʹυϝΠϯΦϒδΣΫτಋೖͨ͠ΒDPNQMJDBUFEʹͳͬͯ͠ ·͏Α w ΈΜͳେ͖'J[[#V[[&OUFSQSJTF&EJUJPO
#ύʔτ
%PNBJO.PEFMʮநग़ʯ͢Δͷ w %PNBJO.PEFMҭͯΔͷʢཁग़యʣͰ͋Δ w ͔࣮ͨ͠ફ%%%ʹͦΜͳ͜ͱॻ͍ͯ͋ͬͨؾ͕͢ΔʢͪΐͬͱௐΔ࣌ؒ ͕ͳ͔ͬͨʣ w ͭ·Γɺ࠷ॳͷ͏ͪͲΜͳυϝΠϯϞσϧΛݟग़͍͍͔ͤΘ͔Βͳ͍ ͜ͱ͕ଟ͍ w
ϓϩμΫτΛఏڙ͠ଓ͚Δ͏ͪʹΑΓྑ͍υϝΠϯϞσϧ͕ݟ͔ͭΓ࢝ΊΔ
5Y4DSJQU74%PNBJO.PEFMʁ w 5Y4DSJQU 3FRVFTU 5Y4DSJQU 3FTQPOTF 7BMJEBUJPO %# "DDFTT #VTJOFTT
-PHJD %# "DDFTT
5Y4DSJQU74%PNBJO.PEFMʁ w 5Y4DSJQU 3FRVFTU 5Y4DSJQU 3FTQPOTF 7BMJEBUJPO %# "DDFTT #VTJOFTT
-PHJD %# "DDFTT ͜ΕΛ
5Y4DSJQU74%PNBJO.PEFMʁ w %PNBJO.PEFM 3FRVFTU 6TFDBTF 3FTQPOTF 3FQPTJUPSZ &OUJUZ %# "DDFTT
#VTJOFTT -PHJD 0SDIFTUSBUF 7BMVF0CKFDU #VTJOFTT -PHJD %PNBJO4FSWJDF #VTJOFTT -PHJD
5Y4DSJQU74%PNBJO.PEFMʁ w %PNBJO.PEFM 3FRVFTU 6TFDBTF 3FTQPOTF 3FQPTJUPSZ &OUJUZ %# "DDFTT
#VTJOFTT -PHJD 0SDIFTUSBUF 7BMVF0CKFDU #VTJOFTT -PHJD %PNBJO4FSWJDF #VTJOFTT -PHJD ঃʑʹ͜͏͢Δ
ͦΜͳ͜ͱ͕Մೳͳͷ͔ʂʁ
5Y4DSJQU74%PNBJO.PEFMʁ w 5Y4DSJQU 3FRVFTU 5Y4DSJQU 3FTQPOTF 7BMJEBUJPO %# "DDFTT #VTJOFTT
-PHJD %# "DDFTT
5Y4DSJQU74%PNBJO.PEFMʁ w %PNBJO.PEFM 3FRVFTU 6TFDBTF 3FTQPOTF 3FQPTJUPSZ &OUJUZ %# "DDFTT
#VTJOFTT -PHJD 0SDIFTUSBUF 7BMVF0CKFDU #VTJOFTT -PHJD %PNBJO4FSWJDF #VTJOFTT -PHJD
֎͔ΒΈΔͱಉ͡
IUUQTUXJUUFSDPNLBXBTJNBTUBUVT
LBXBTJNB͞Μ͕ͥΜͿॻ͍ͯͨ
5Y4DSJQUJTB6TFDBTF w 5Y4DSJQUϨϕϧͰͷ6OJU5FTU͕ॻ͔Ε͍ͯΕɺͦΕͦͷ··6TFDBTFϨ ϕϧͷ6OJU5FTUʹͳΔ w ͜ͷςετΛյ͞ͳ͍6TFDBTFϨϕϧͰͷڍಈ͕୲อ͞Ε͍ͯΔ w օ͞Μେ͖ϦϑΝΫλϦϯάͷ͓࣌ؒͰ͢ w 7BMVF0CKFDUͷநग़ͱ͔ΊͬͪΌίετͦ͘ΕͳΓʹޮՌ͕͋Δخ͠
͍ͭ w %%%ͬͯ݁ہී௨ͷ00ͩΑͶͬͯͷ͜͜ͷ
#ύʔτ·ͱΊ w 5Y4DSJQUͱ%PNBJO.PEFMೋ߲ରཱͰͳͯ͘ϨΠϠʔ͕ҟͳΔ w 5Y4DSJQUͱಉ͡ϨΠϠʔʹ͍Δͷ6TFDBTF w 5Y4DSJQUΛ͖ͪΜͱςετͰक͓ͬͯ͘͜ͱͰஈ֊తʹ5Y4DSJQU͔Β%PNBJO .PEFMͷநग़͕Մೳ w ͭ·ΓͪΌΜͱςετॻ͍ͯ͋Ε5Y4DSJQUͰ͑͑
མͪึर͍ w 6TFDBTFϨϕϧͷςετॻ͍ͱ͘ͱɺ5Y4DSJQU͕$PNQMFYʹͳ͖ͬͯͨͱ͖ ʹͭΒ͘ͳΓ·͢ w $PNQMFY4JNQMFCVUTPNFUJNFTDPNQMJDBUFEͷ͖͔͚͔ͬͭΊ Δ w $PNQMJDBUFE͡Όͳͨ͘͢Ίʹ00ྗʢʁʣ͕ඞཁͳͷ͡Όʜʜ
IUUQTUXJUUFSDPNPOJHSB@TUBUVT 6TFDBTFϨϕϧͷςετॻ͍ͯཉ͍͠
·ͱΊ w ʮ%%%ͱ͔ΫϦʔϯΞʔΩςΫνϟͱ͔ϚΠΫϩαʔϏεͱ͔Ͳ͏Ͱ͍͍ ʢ5Y4DSJQUͰ͍͍ʣ͔Βͱʹ͔͘ϩάݟͯTFOUSZݟͯEBUBEPHݟͯཉ͍͠ʯ͕ ཱ͢ΔͨΊʹ w Ϣʔεέʔε͕ेʹγϯϓϧͰ͋Γɺ5Y4DSJQUͰ4JNQMF͔ͭ&BTZ͕࣮ݱ Ͱ͖Δ w 03"/%
w 5Y4DSJQUʹରͯ͠Ϣχοτςετ͕ॻ͔Ε͓ͯΓɺ6TFDBTFϨϕϧͰͷϦϑ ΝΫλ͕҆શʹߦ͑Δ
͖ͭͮʢ͋Εʣ σΟεΧογϣϯͰ