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
CDKでValidationする本当の方法 / cdk-validation
Search
k.goto
January 23, 2023
Programming
2
1.6k
CDKでValidationする本当の方法 / cdk-validation
2023/01/25開催 JAWS-UG CDK支部 #5「〜新春隠し芸大会〜」での発表資料です。
k.goto
January 23, 2023
Tweet
Share
More Decks by k.goto
See All by k.goto
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
4
620
S3バケットを高速で削除・空にするツール「cls3」 / s3-deletion-tool-cls3
gotok365
4
440
AWS CDKで コンテナイメージスキャンを行う 〜ECRとその他の方法〜 / cdk-container-image-scan
gotok365
2
960
スタートアップでこそCDKが活きた〜生産性を向上できた5つの理由〜 / startup-cdk-productivity
gotok365
9
3.4k
AWS CDKで"使う"GoFデザインパターン 〜実際どうなの?〜 / GoF design patterns used with AWS CDK
gotok365
3
1k
AWS CDKで学ぶGoFデザインパターン〜IaCにもコード設計〜 / aws dev day cdk gof design patterns
gotok365
11
4.2k
CloudWatch複合アラームでELBの5XXをいい感じに検知しようとしたらうまくいかなかった話 / cloudwatch alarm elb 5xx
gotok365
0
2.5k
AWS CDKとZodを活用したバリデーションパターン集 / validation patterns with cdk and zod
gotok365
6
2.8k
App Runnerで AppでないものをRunする / run non apps with app runner
gotok365
5
2k
Other Decks in Programming
See All in Programming
Sheets API使ってみた
toshi0383
2
180
『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか
free_world21
2
470
ソースコードを美しくたもつために ~コードレビューの認知限界を突破し、年間400リリースを達成する~
kotauchisunsun
1
660
戦略的DDDは重いのか? / Is strategic DDD heavy?
pictiny
3
2.1k
TCAとKMPを用いた新規動画配信アプリ 「ABEMA Live」の設計
tomu28
2
140
Node.js v22 で変わること
yosuke_furukawa
PRO
12
4.2k
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
13
4.3k
An adventure of Happy Eyeballs
coe401_
1
140
Native Federation: The Future of Micro Frontends in Angular
manfredsteyer
PRO
0
170
TypeScriptで使いやすいOpenAPIの書き方
yukimochi_dwango
1
580
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
0
120
RustでAWS Lambda functionをいい感じに書く
taiki45
2
150
Featured
See All Featured
Infographics Made Easy
chrislema
238
18k
Designing the Hi-DPI Web
ddemaree
276
33k
Testing 201, or: Great Expectations
jmmastey
30
6.4k
Robots, Beer and Maslow
schacon
PRO
155
8k
Atom: Resistance is Futile
akmur
260
25k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
A Tale of Four Properties
chriscoyier
153
22k
Thoughts on Productivity
jonyablonski
60
3.9k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
0
120
10 Git Anti Patterns You Should be Aware of
lemiorhan
649
58k
The Straight Up "How To Draw Better" Workshop
denniskardys
228
130k
Transcript
LHPUP าͷςοΫ $%,Ͱ7BMJEBUJPO͢Δຊͷํ๏ +"846($%,ࢧ෦ʙ৽य़Ӆܳ͠େձʙ
ࣗݾհ w ςοΫϦʔυ w าͷςοΫ ٕज़ϒϩά ‣ "84ωλׂ w
ϥʔϝϯ͖ w 5XJUUFS!@TUFQ@UFDI ‣ LHPUP าͷςοΫ
ʙ৽य़Ӆܳ͠େձʙ ͔͍ࣗͬͯ͠ͳ͍Ͱ͋Ζ͏ػೳͷ͓
લఏ w $%,5ZQF4DSJQUͰ࣮͍ͯ͠·͢ w όʔδϣϯ ‣ /PEFKT ‣ 5ZQF4DSJQU ‣
"84$%, ຊهࣄͷ࣮ߦ༰ɺWͩͱগ͠ڍಈ͕มΘΓ·͢
$%,Ͱ7BMJEBUJPO͍ͨ͠ͳ͋
7BMJEBUJPOͯ͠Έͨ
7BMJEBUJPOͯ͠Έͨ ˞ಡ·ͳͯ͘େৎͰ͢
7BMJEBUJPOͯ͠Έͨ &SSPSUIFDPOTUSVDU$EL"EE7BMJEBUJPO4UBDLIBTBWBMJEBUF NFUIPE XIJDIJTOPMPOHFSTVQQPSUFE6TFDPOTUSVDUOPEFBEE7BMJEBUJPO UP BEEWBMJEBUJPOTUPBDPOTUSVDU w ελοΫΫϥεʹWBMJEBUF ϝιου࡞ͬͪΌμϝ w
lDPOTUSVDUOPEFBEE7BMJEBUJPO Λ͍ͳ͍͞ ‣ όϦσʔγϣϯΛίϯετϥΫτʹՃ͢Δ ˞WBMJEBUF NFUIPEJTOPMPOHFSTVQQPSUFE $%,Wͩͱ·ͨҧ͏ͷͰ͢ ΦʔόʔϥΠυʹͳΔ
BEE7BMJEBUJPO IUUQTEPDTBXTBNB[PODPNDELBQJWEPDT DPOTUSVDUT/PEFIUNMBEEXCSWBMJEBUJPOWBMJEBUJPO ͨ͠όϦσʔγϣϯ͕ DELTZOUI࣌ʹΓ·͢
JOUFSGBDF*7BMJEBUJPO IUUQTEPDTBXTBNB[PODPNDELBQJWEPDTDPOTUSVDUT*7BMJEBUJPOIUNM
ݺͼग़ؔ͠ ͜ΕΛ࡞ͯ͠ όϦσʔγϣϯϧʔϧΛ࣮ .Z7BMJEBUPSͷΠϯελϯεΛੜ UIJTOPEFBEE7BMJEBUJPOʹ͢
ॻ͍ͯΈͨ 7BMJEBUPS w ྫʣ8"'ͷϦʔδϣϯͱείʔϓͷΈ߹ΘͤͷόϦσʔγϣϯ ˞BEE7BMJEBUJPJO͠ͳͯ͘DELEFQMPZ࣌ʹΤϥʔʹͳΔྫͰ͕͢ɺ͋͘·ͰྫͰ͢
ॻ͍ͯΈͨ 4UBDL w ελοΫΫϥεͰόϦσʔγϣϯ 7BMJEBUPS Λ͢ ͨͬͨߦʂ *GUSZ UISPXOFX&SSPS ͱ͔͍Βͳ͍ʂ
࣮ߦͯ͠Έͨ DELTZOUI .Z7BMJEBUPSWBMJEBUF Ͱ SFHJPO͕zVTFBTUzͰͳ͍ͱΤϥʔʹ͢ΔΑ͏όϦσʔγϣϯͯ͋͠Δ &SSPS7BMJEBUJPOGBJMFEXJUIUIFGPMMPXJOHFSSPST <$EL"EE7BMJEBUJPO4UBDL>3FHJPONVTUCFVTFBTUXIFO$-06%'30/5
ෳΤϥʔͷݕ w Γ͕TUSJOH<>ͳͷͰɺෳͷΤϥʔΛݕɾग़ྗͰ͖Δ &SSPS7BMJEBUJPOGBJMFEXJUIUIFGPMMPXJOHFSSPST <$EL"EE7BMJEBUJPO4UBDL>5FTU&SSPS <$EL"EE7BMJEBUJPO4UBDL>5FTU&SSPS ʢ༻ྫʣ ελοΫʹͨ͠֎෦ύϥϝʔλ Ͱҧͨ͠ύϥϝʔλΛશ෦ग़ྗ
Ϣʔεέʔε w ελοΫ͢ύϥϝʔλɾίϯςΩετͷใʹରͯ͠όϦσʔτ͍ͨ͠ ‣ ࣮ߦͯ͠ΤϥʔʹͳΒͳ͍͚ͲΦϖϨʔγϣϯ্͍͗ͨ ˞ࠓճڍ͛ͨྫBEE7BMJEBUJPO͠ͳͯ͘DELEFQMPZ࣌ʹΤϥʔʹͳΓ·͢ 㾎͋͘·ͰαϯϓϧྫͳͷͰɻɻɻ 㾎DELTZOUI࣌ʹ͛Δͱ͍͏ྑ͍ ‣
"TQFDU͏Α͏ͳͷͰͳ͍ ελοΫಛ༗ͷϧʔϧ
ϝϦοτ w ෳΤϥʔͷϋϯυϦϯά ‣ *GPSUSZDBUDI &SSPS UISPX ͩͱجຊతʹҰͭͷΤϥʔ ։ൃऀମݧΞοϓʂ
w อकੑ্ ‣ ΧϓηϧԽʹΑΓɺόϦσʔγϣϯϧʔϧΛม͑ͯελοΫΫϥεʹมߋ͕ͳ͍ ‣ ͚ʹΑͬͯɺίʔυελοΫߏͷݟ௨͠ྑ͘ͳΔ w ެ͕ࣜఏڙ ‣ Ϩʔϧʹ͔ͬΔʂ
ެࣜ$%,8PSLTIPQʮόϦσʔγϣϯςετʯ IUUQTDELXPSLTIPQDPNKBUZQFTDSJQUBEWBODFE UPQJDTDPOTUSVDUUFTUJOHWBMJEBUJPOUFTUTIUNM ެࣜͰ͢Β BEE7BMJEBUJPOΛ ͍ͬͯ·ͤΜͰͨ͠ʂʂʂ
ʙ৽य़Ӆܳ͠େձʙ ͜Ε͕ຊͷӅܳ͠ɻɻɻ
Ԡ༻ w 5ZQF4DSJQUͷ$%,ελοΫΛ;PEͰόϦσʔγϣϯ͢Δ ‣ IUUQTHPUPLIBUFOBCMPHDPNFOUSZUTDEL[PEWBMJEBUJPO w $%,ͷ֎෦ύϥϝʔλʹܕ͚ͩͰͳ੍͔͚͘Δ ‣ IUUQTHPUPLIBUFOBCMPHDPNFOUSZDELQBSBNFUFSUZQFWBMJEBUJPO
ࠓͷ༰ͷৄࡉ w ϒϩάɿ"84$%,ͰόϦσʔγϣϯΛߦ͏ BEE7BMJEBUJPO ‣ IUUQTHPUPLIBUFOBCMPHDPNFOUSZDELBEEWBMJEBUJPO ۩ମతͳίʔυɾղઆ͕ࡌͤͯ͋Γ·͢ɻ w
(JU)VC ‣ IUUQTHJUIVCDPNHPUPLDELBEEWBMJEBUJPO ࠓڍ͛ͨ؆୯ͳαϯϓϧίʔυ͕ࡌͤͯ͋Γ·͢ɻ
5IBOL:PV LHPUP าͷςοΫ