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
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
120
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
250
Conform を推す - Advocating for Conform
mizoguchicoji
3
690
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
12
4.1k
Amazon Bedrock Multi Agentsを試してきた
tm2
1
290
楽しく向き合う例外対応
okutsu
0
140
法律の脱レガシーに学ぶフロントエンド刷新
oguemon
5
740
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
170
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
170
Unity Android XR入門
sakutama_11
0
160
Spring gRPC について / About Spring gRPC
mackey0225
0
220
Flutter × Firebase Genkit で加速する生成 AI アプリ開発
coborinai
0
160
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Adopting Sorbet at Scale
ufuk
74
9.2k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Bash Introduction
62gerente
611
210k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Done Done
chrislema
182
16k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Building Your Own Lightsaber
phodgson
104
6.2k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
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ϨϕϧͰͷϦϑ ΝΫλ͕҆શʹߦ͑Δ
͖ͭͮʢ͋Εʣ σΟεΧογϣϯͰ