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
AWS CDK の目玉新機能「Mixins」とは / cdk-mixins
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
k.goto
February 24, 2026
Technology
770
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWS CDK の目玉新機能「Mixins」とは / cdk-mixins
2026/02/24 開催 JAWS-UG CDK 支部の登壇資料です。
k.goto
February 24, 2026
More Decks by k.goto
See All by k.goto
Level Up Your CDK DX: 5 Tools I’ve Been Building
gotok365
2
190
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.9k
IaC コードを資産へ:AWS CDK 社内ライブラリと横断展開 / aws-summit-japan-2026
gotok365
10
4.8k
AWS CDKの仕組み / how-aws-cdk-works
gotok365
18
5.9k
AWS CDK 実践的アプローチ N選 / aws-cdk-practical-approaches
gotok365
8
2.8k
TypeScript製IaCツールのAWS CDKが様々な言語で実装できる理由 ~他言語変換の仕組み~ / cdk-language-transformation
gotok365
10
1.7k
とあるEdTechベンチャーのシステム構成こだわりN選 / edtech-system
gotok365
7
1.1k
CodePipelineのアクション統合から学ぶAWS CDKの抽象化技術 / codepipeline-actions-cdk-abstraction
gotok365
5
570
AWS CDKにおけるL2 Constructの仕組み / aws-cdk-l2-construct
gotok365
6
1.6k
Other Decks in Technology
See All in Technology
Claude in Chrome 入門 / Introduction to Claude in Chrome
cielo1985
0
640
Gitは怖い?共有ワークスペースから始めるSnowflakeチーム開発
coco_se
0
190
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
1
740
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
120
AI 駆動 Terraform 開発/SRE_BizReach_MIXI_2
visional_engineering_and_design
5
2.1k
NW運用でNWトポロジ可視化ツールに期待すること/shumoku-meetup1
corestate55
2
120
Microsoft 365 Copilot chat -tekoälypalvelun tietosuojaongelmat
hponka
0
820
AIオーケストレーションを活用した 開発ワークフローの設計と実践
bqnq
0
160
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
18
9.7k
GoにおけるFFIのこれまでとこれから
goccy
5
2.5k
アリアドネの糸と、20年ごとの建て替え ── 長尾真『電子図書館』を、伊勢で読み直す / Rereading Makoto Nagao’s "Electronic Library" in Ise
ykiyota
0
160
顧客に向き合う開発組織へ。リアーキテクチャとフィーチャーチーム化で挑む組織改革
safie
0
510
Featured
See All Featured
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.2k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Navigating Weather and Climate Data
rabernat
0
510
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
4
630
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
250
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
500
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Transcript
LHPUP AWS CDK ͷۄ৽ػೳ ʮMixinsʯͱ +"846($%,ࢧ෦
ࣗݾհ LHPUP "84)&30 "84$%,ίϯτϦϏϡʔλʔ 0QFO$POTUSVDUT-JCSBSZ ίϛϡχςΟۦಈ$%,$POTUSVDUϥΠϒϥϦ "84πʔϧ DMT EFMTUBDL MBNWFS
"84%FW5PPMT)FSP .BJOUBJOFS 5PQ$POUSJCVUPS $PNNVOJUZ3FWJFXFS ࣗ࡞044 $%,$POTUSVDUϥΠϒϥϦ 9!@TUFQ@UFDI (JU)VC!HPUPL
Mixins ͱ
.JYJOTͱ w ҙͷ$POTUSVDUʹ߹ͤՄೳͳநԽΛద༻͢ΔΈ ‣ --$POTUSVDUͳͲͷϨϕϧΛΘͳ͍ ‣ αʔϏεΛލ͙நԽ͋Δ "VUP%FMFUF0CKFDUT .JYJO $GO9YY
#VDLFU $GO#VDLFU -PH(SPVQ &ODSZQUJPO"U3FTU .JYJO -$POTUSVDU -$POTUSVDU
.JYJOTͱ w ҙͷ$POTUSVDUʹ߹ͤՄೳͳநԽΛద༻͢ΔΈ ‣ --$POTUSVDUͳͲͷϨϕϧΛΘͳ͍ ‣ αʔϏεΛލ͙நԽ͋Δ "VUP%FMFUF0CKFDUT .JYJO $GO9YY
#VDLFU $GO#VDLFU -PH(SPVQ &ODSZQUJPO"U3FTU .JYJO -$POTUSVDU -$POTUSVDU
.JYJOTͱ w ҙͷ$POTUSVDUʹ߹ͤՄೳͳநԽΛద༻͢ΔΈ ‣ --$POTUSVDUͳͲͷϨϕϧΛΘͳ͍ ‣ αʔϏεΛލ͙நԽ͋Δ "VUP%FMFUF0CKFDUT .JYJO $GO9YY
#VDLFU $GO#VDLFU -PH(SPVQ &ODSZQUJPO"U3FTU .JYJO -$POTUSVDU -$POTUSVDU
.JYJOTͱ w ҙͷ$POTUSVDUʹ߹ͤՄೳͳநԽΛద༻͢ΔΈ ‣ --$POTUSVDUͳͲͷϨϕϧΛΘͳ͍ ‣ αʔϏεΛލ͙நԽ͋Δ "VUP%FMFUF0CKFDUT .JYJO $GO9YY
#VDLFU $GO#VDLFU -PH(SPVQ &ODSZQUJPO"U3FTU .JYJO -$POTUSVDU -$POTUSVDU
.JYJOTͱ w $%,WͰಋೖ͞Εɺ݄ݱࡏ%FWFMPQFS1SFWJFX ‣ ·ͩશͯͷػೳ͕ἧ͍ͬͯΔΘ͚Ͱͳ͍ ‣ ഁյతมߋػೳՃͳͲΨϯΨϯདྷΔ d ຊηογϣϯͷར༻WFS
Ͱ͔ͳΓͷഁյతมߋ͕͋ͬͨ w ຊηογϣϯͰͷར༻$%,όʔδϣϯ αϯϓϧίʔυ5ZQF4DSJQU ‣ $%,ϥΠϒϥϦ BXTDELMJC ‣ .JYJOTϞδϡʔϧ !BXTDELNJYJOTQSFWJFX BMQIB ‣ $%,$-* BXTDEL
.JYJOTͷར ᶃ-$POTUSVDUʹ-$POTUSVDUͷநԽΛ෦తɾબతʹద༻Ͱ͖Δ ‣ -$POTUSVDUΛΘͣͱϢʔβ͕ඞཁͳػೳͷΈΛಋೖͰ͖Δ ‣ -$POTUSVDUͷҰ෦ͷநԽັྗత͕ͩద༻ͨ͘͠ͳ͍நԽ͋ͬͨਓʹ˕ ػೳ" -$POTUSVDU -$POTUSVDU ػೳ#
ػೳ$ .JYJO" .JYJO# .JYJO$
.JYJOTͷར ᶄ-$POTUSVDUʹ"84αʔϏεͷ৽ػೳΛ͙͢ʹɾܕ҆શʹөͰ͖Δ ‣ ैདྷ-$POTUSVDUͰ"84αʔϏεͷ৽ػೳΛ͙͢ʹ͑ͳ͔ͬͨ -$POTUSVDU͙͢ʹ৽ϓϩύςΟ͕1SPQTʹө -$POTUSVDU1SPQTʹө͞ΕΔ·Ͱʹ͕͔͔࣌ؒΔ ίϯτϦϏϡʔτͪ
‣ Τεέʔϓϋον ϓϩύςΟ্ॻ͖Ͱద༻Ͱ͖͕ͨɺܕ͕อূ͞Ε͍ͯͳ͔ͬͨ BEE1SPQFSUZ0WFSSJEF OFX1SPQFSUZ9:ZZ USVF -$POTUSVDU $GO9YY1SPQT.JYJO OFX1SPQFSUZ9\ :ZZUSVF ^ -$POTUSVDUͷ1SPQT ܕ͋Γ Λద༻͢Δ.JYJO͕༻ҙ͞Ε͍ͯΔ
ͭ·Γ Mixins ͱ
L1 / L2 Construct ؒͷ ִͨΓΛຒΊΔͷ
.JYJOTͷΠϯετʔϧํ๏ͱҙ w OQNJOTUBMM%!BXTDELNJYJOTQSFWJFX ‣ ·ͩ%FWFMPQFS1SFWJFXͷͨΊผύοέʔδͰఏڙ w DELEFQMPZ࣮ߦ࣌ʹΤϥʔ͕ൃੜ͢Δ߹ɺUTDPO fi HKTPOΛ֬ೝ ‣
طଘͷ$%,1+ͩͱݹ͍ઃఆʹͳ͍ͬͯΔ͜ͱ ‣ ӈͷઃఆʹ͠·͠ΐ͏ˠ
.JYJOTͷ͍ํ w .JYJOTPG BQQMZ .JYJOͷద༻ w ˞.JYJOTʹؔͳ͍JNQPSUจมলུ
.JYJOTͷ͍ํ w ίϯετϥΫτXJUI .JYJOTPG BQQMZ ͱಉ͡ .JYJOTPGͷํ͕ߴػೳ ‣ ݱࡏ+BWB4DSJQUͱ5ZQF4DSJQUͰͷΈར༻Մೳ
("࣌ͯ͢ͷݴޠͰରԠ ‣ JNQPSU!BXTDELNJYJOTQSFWJFXXJUI͕ඞཁ ("࣌ෆཁʹͳΔ ˞.JYJOTʹؔͳ͍JNQPSUจมলུ
.JYJOTͷ͍ํ w .JYJOT$POTUSVDUπϦʔʹద༻͞ΕΔ ‣ "TQFDUTͷΑ͏ʹಛఆͷείʔϓԼͷશͯͷϦιʔεʹରͯ͠ద༻Ͱ͖Δ ‣ $POTUSVDU4FMFDUPSΛ༻ͯ͠ɺಛఆͷछྨͷϦιʔεͷΈʹద༻ରΛߜΕΔ ˞.JYJOTʹؔͳ͍JNQPSUจมলུ
.JYJOTͷछྨ ᶃαʔϏεؒ.JYJOT ᶄϦιʔεݻ༗.JYJOT ᶅ-ϓϩύςΟ.JYJOT ᶆϩά৴.JYJOT
ᶃαʔϏεؒ.JYJOT w ෳͷ"84αʔϏεʹڞ௨ͯ͠ద༻Ͱ͖Δ.JYJO ‣ &ODSZQUJPO"U3FTU҉߸Խ͕ՄೳͳϦιʔεʹରͯ͠ڞ௨ͯ͠҉߸ԽΛ༗ޮԽ ˞ະϚʔδ͕ͩ13ਐߦத
ᶄϦιʔεݻ༗.JYJOT w ͦΕͧΕͷ"84αʔϏε Ϧιʔε ݻ༗ͷ.JYJO ‣ 424 ˞ະϚʔδ͕ͩ13ਐߦத
3FESJWF1PMJDZ.JYJO 3FESJWF"MMPX1PMJDZ.JYJO 'JGP.JYJO ‣ 4 "VUP%FMFUF0CKFDUT #VDLFU7FSTJPOJOH #VDLFU1PMJDZ4UBUFNFOUT.JYJO #VDLFU#MPDL1VCMJD"DDFTT ‣ &$4 $MVTUFS4FUUJOHT
ᶅ-ϓϩύςΟ.JYJOT w -$POTUSVDUʹະಋೖͷ-ϓϩύςΟΛܕ҆શʹద༻͢Δ.JYJO ‣ $GO9YY1SPQT.JYJOͯ͢ͷ-$POTUSVDU͝ͱʹࣗಈੜ͞Ε͍ͯΔ
ᶅ-ϓϩύςΟ.JYJOT w Ϛʔδઓུ ‣ .&3(& σϑΥϧτ طଘͷϓϩύςΟʹɺࢦఆͨ͠ϓϩύςΟΛϚʔδ ‣ 07&33*%&طଘͷϓϩύςΟΛɺࢦఆͨ͠ϓϩύςΟͰ্ॻ͖
ᶆϩά৴.JYJOT w 7FOEFEMPHT৴ͷͨΊͷ.JYJO ‣ $GO9YY-PHT.JYJO999@-0(4UP-PH(SPVQ ‣ $GO9YY-PHT.JYJO999@-0(4UP4 ‣
$GO9YY-PHT.JYJO999@-0(4UP'JSFIPTF ‣ $GO9YY-PHT.JYJO999@-0(4UP%FTUJOBUJPO
ᶆϩά৴.JYJOT w 7FOEFEMPHT৴ͷͨΊͷ.JYJO ‣ ରԠ͢Δ"84αʔϏε͝ͱʹ$%,ϦϙδτϦଆͰࣗಈੜ͞Ε͍ͯΔ $GO%JTUSJCVUJPO-PHT.JYJO $GO6TFS1PPM-PHT.JYJO
$GO71$-PHT.JYJO $GO-PBE#BMBODFS-PHT.JYJO FUD
Mixins Λ͍͜ͳ͢
ΤϥʔϋϯυϦϯά w BQQMZ ద༻͢Δ.JYJO͕αϙʔτ͞Ε͍ͯͳ͍ϦιʔεΛεΩοϓ͢Δ ‣ ྫ 4/45PQJDʹ#VDLFU7FSTJPOJOH.JYJOˠεΩοϓ w ద༻$POTUSVDUԼʹະαϙʔτͷϦιʔε͕͋Δ͔Ͳ͏͔νΣοΫ͍ͨ͠ ‣
SFRVJSF"MM αϙʔτ͞Ε͍ͯͳ͍Ϧιʔε͕ͭͰ͋ΕΤϥʔ ‣ SFRVJSF"OZ αϙʔτ͞Ε͍ͯΔϦιʔε͕ͭͳ͚ΕΤϥʔ
ΤϥʔϋϯυϦϯά w ద༻ɾະద༻Ϧιʔεʹରͯ͠खಈͰΞαʔγϣϯ ϋϯυϦϯά ͍ͨ͠ ‣ SFQPSU.JYJO͕ਖ਼ৗʹద༻͞ΕͨϦιʔεͷϦετΛऔಘ
ΤϥʔϋϯυϦϯά w ద༻ɾະద༻Ϧιʔεʹରͯ͠खಈͰΞαʔγϣϯ ϋϯυϦϯά ͍ͨ͠ ‣ TFMFDUFE$POTUSVDUT.JYJOͷద༻ର$POTUSVDUͷϦετΛऔಘ 㱠݁Ռ
ΧελϜ.JYJOT ᶃ*.JYJOΠϯλʔϑΣʔεΛ࣮ ᶄ.JYJOநΫϥεΛܧঝ *.JYJOͷҰ෦͕͢Ͱʹ࣮͞Ε͍ͯΔ ‣ ᶃΑΓᶄ͕ਪ ༻ײ΄ͱΜͲมΘΒͳ͍͕ɺকདྷతͳҠߦ͕༰қʹͳΔ CZϝϯςφ
"TQFDUTͱͷҧ͍ w .JYJOTͱ"TQFDUTࣅ͍ͯΔ ‣ πϦʔԼͷϦιʔεͷઃఆΛมߋ͢Δ w ྆ऀͷओͳҧ͍ʮద༻λΠϛϯά͕ҟͳΔʯͱ͍͏ ‣ .JYJOTݺͼग़࣌͠ʹଈ࠲ʹ࣮ߦ $POTUSVDUϑΣʔζ
໋ྩܕϓϩάϥϛϯάܗࣜ ‣ "TQFDUTͯ͢ͷ$POTUSVDUੜͷޙ 1SFQBSFϑΣʔζ એݴܕϓϩάϥϛϯάܗࣜ
"TQFDUTͱͷҧ͍
"TQFDUTͱͷҧ͍ w .JYJOTͱ"TQFDUTͷ͍͚ํ ‣ มߋΛՃ͑Δ߹.JYJOT ‣ ಈ࡞Λݕূ͢Δ߹"TQFDUT w "TQFDUTͱ.JYJOTΛ૬ޓʹมͰ͖ΔΈಋೖ͞ΕΔ ༧ఆ
˞·ͩݱ࣌Ͱͷ$%,ͷϦϦʔεʹಋೖ͞Ε͍ͯ·ͤΜ͕ɺ 3'$ʹࡌ͍ͬͯΔͷͰڪΒ͍ۙ͘͏ͪʹಋೖ͞ΕΔͣɻɻɻ
"TQFDUTͱͷҧ͍ w .JYJOT"TQFDUT(P'σβΠϯύλʔϯͷ7JTJUPSύλʔϯ ˞IUUQTTQFBLFSEFDLDPNHPUPLBXTEFWEBZDELHPGEFTJHOQBUUFSOT ˞IUUQTHPUPLIBUFOBCMPHDPNFOUSZBXTDELJOUFSOBMHPGQBUFSOT
1SPQFSUZ*OKFDUPSTͱͷҧ͍ w 1SPQFSUZ*OKFDUPSTͱ ‣ ಛఆͷछྨͷ--$POTUSVDUʹରͯ͠ϓϩύςΟΛҰݩతʹॻ͖͑Δ
1SPQFSUZ*OKFDUPSTͱͷҧ͍ w .JYJOTͱ1SPQFSUZ*OKFDUPSTͷ͍͚ํ ‣ நԽΛద༻͍ͨ͠߹.JYJOT ద༻ର-$POTUSVDU -$POTUSVDU είʔϓΛߜΔ͜ͱ͕ଟ͍
ಛఆͷ$POTUSVDUͳͲ ‣ σϑΥϧτͷಈ࡞Λม͍͑ͨ߹ ϒϧʔϓϦϯτ 1SPQFSUZ*OKFDUPST ద༻ର-$POTUSVDU Ұ෦-$POTUSVDU είʔϓ͕͍͜ͱ͕ଟ͍ "QQ୯ҐͳͲ ͪΖΜߜͬͯશવྑ͍
1SPQFSUZ*OKFDUPSTͱͷҧ͍ w 1SPQFSUZ*OKFDUPSTʹ͍ͭͯͷࢀߟ ˞IUUQTBXTBNB[PODPNKQCVJMEFST fl BTIDELQSPQFSUZCVMLBQQMZ ˞IUUQTHPUPLIBUFOBCMPHDPNFOUSZDELQSPQFSUZJOKFDUPS
&WFOU#SJEHFΠϕϯτύλʔϯ w &WFOU#SJEHFͷΠϕϯτύλʔϯΛܕ͖Ͱ҆શʹੜ͢ΔΈఏڙ ‣ -$POTUSVDUʹ-$POTUSVDUʹରԠ ‣ ରԠΠϕϯτ͝ͱʹ$%,ϦϙδτϦଆͰࣗಈੜ
·ͱΊ
.JYJOT·ͱΊ w .JYJOTͱ--$POTUSVDUؒͷִͨΓΛຒΊΔͷ ‣ ҙͷ$POTUSVDUʹ߹ͤՄೳͳநԽΛద༻͢ΔΈ --$POTUSVDUͳͲͷϨϕϧΛΘͳ͍ αʔϏεΛލ͙நԽ͋Δ ‣
ར -$POTUSVDUʹ-$POTUSVDUͷநԽΛ෦తɾબతʹద༻Ͱ͖Δ -$POTUSVDUʹ"84αʔϏεͷ৽ػೳΛ͙͢ʹɾܕ҆શʹөͰ͖Δ
ࣗ࡞πʔϧ OSS ͷ͝հ
DELBHD $%,"TTFNCMZ(BSCBHF$PMMFDUPS 㾎ංେԽͨ͠DELPVU͔ΒෆཁͳΞηοτΛআ 㾎Ϗϧυ͞Εͨ%PDLFSΠϝʔδࣗಈͰআ 㾎04ͷUNQσΟϨΫτϦʹཷ·ͬͨ$%,σΟϨΫτϦΛҰ 㾎Πϯετʔϧૢ࡞ෆཁ OQYDELBHDίϚϯυͰଈ࣮ߦ IUUQTHJUIVCDPNHPUPLDELBHD
"84πʔϧ ʲDMTʳ4όέοτΛߴʹআɾۭʹ͢Δπʔϧ ‣ IUUQTHJUIVCDPNHPUPLDMT ʲEFMTUBDLʳ"84$MPVE'PSNBUJPOελοΫڧ੍আπʔϧ ‣ IUUQTHJUIVCDPNHPUPLEFMTUBDL ʲMBNWFSʳ-BNCEBϥϯλΠϜόʔδϣϯݕࡧπʔϧ ‣ IUUQTHJUIVCDPNHPUPLMBNWFS
$%,$POTUSVDUϥΠϒϥϦ ʲJNBHFTDBOOFSXJUIUSJWZʳ$%,Ͱ5SJWZͰίϯςφΠϝʔδεΩϟϯ ‣ IUUQTDPOTUSVDUTEFWQBDLBHFTJNBHFTDBOOFSXJUIUSJWZ ʲJNBHFTDBOOFSXJUIEPDLMFʳ$%,Ͱ%PDLMFͰίϯςφΠϝʔδεΩϟϯ ‣ IUUQTDPOTUSVDUTEFWQBDLBHFTJNBHFTDBOOFSXJUIEPDLMF ʲFMCPUIFSYYBMBSNʳ$%,ͰϚΠφʔͳYY
ͷ&-#ΞϥʔϜ ‣ IUUQTDPOTUSVDUTEFWQBDLBHFTFMCPUIFSYYBMBSN
5IBOL:PV LHPUP "84%FW5PPMT)FSP 9!@TUFQ@UFDI (JU)VC!HPUPL