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
明日からできないReactVer1.0
Search
takayukiOchiai
May 16, 2016
Technology
0
120
明日からできないReactVer1.0
takayukiOchiai
May 16, 2016
Tweet
Share
More Decks by takayukiOchiai
See All by takayukiOchiai
Terraform_on_AWS入門.pdf
takayukiochiai
3
510
Other Decks in Technology
See All in Technology
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
220
AWS CDK 実践的アプローチ N選 / aws-cdk-practical-approaches
gotok365
6
720
5min GuardDuty Extended Threat Detection EKS
takakuni
0
130
初めてのAzure FunctionsをClaude Codeで作ってみた / My first Azure Functions using Claude Code
hideakiaoyagi
1
210
A2Aのクライアントを自作する
rynsuke
1
170
Model Mondays S2E02: Model Context Protocol
nitya
0
220
地図も、未来も、オープンに。 〜OSGeo.JPとFOSS4Gのご紹介〜
wata909
0
110
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
200
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
160
Amazon ECS & AWS Fargate 運用アーキテクチャ2025 / Amazon ECS and AWS Fargate Ops Architecture 2025
iselegant
16
5.4k
VISITS_AIIoTビジネス共創ラボ登壇資料.pdf
iotcomjpadmin
0
160
AIエージェント最前線! Amazon Bedrock、Amazon Q、そしてMCPを使いこなそう
minorun365
PRO
13
4.9k
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Code Review Best Practice
trishagee
68
18k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
700
For a Future-Friendly Web
brad_frost
179
9.8k
Facilitating Awesome Meetings
lara
54
6.4k
Unsuck your backbone
ammeep
671
58k
Bash Introduction
62gerente
614
210k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
GraphQLとの向き合い方2022年版
quramy
47
14k
Rails Girls Zürich Keynote
gr2m
94
14k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
Statistics for Hackers
jakevdp
799
220k
Transcript
໌͔ΒͰ͖ͳ͍ 3FBDUKT 3FEVYೖ མ߹ོߦ
ɾ3FBDUKTͷ֓ཁɾϝϦοτ ɾ'MVYͱ3FEVYͷ֓ཁɾϝϦοτ ɾࠓޙڵຯΛ࣋ͬͯࣗशͨ͠Γ͢Δͱ͖ʹඞཁͳશମͷ၆ᛌਤ ࠓ͑Δ͜ͱ ͑ͳ͍͜ͱ ɾ3FBDUKT3FEVYͰͺʔ;͐͘ͱΓͪʔͳΞϓϦΛ࡞Δํ๏
3FBDU
ߦͰΘ͔Δ3FBDU ɾ'BDFCPPL͕ϝΠϯͰ։ൃΛਐΊ͍ͯΔ044 ɾը໘ͷඳըʹؔΘΔ+BWB4DSJQUͷ7JFXϥΠϒϥϦ ɹʢϑϨʔϜϫʔΫͰͳ͍ʂʣ ɾ(PPHMFઌੜ͕୲͍Ͱ͍Δ"OHVMBSͱᘳΛͳ͢ͱࢿྉͷ๛ ͞Ͱɺ࠾༻࣮˕ ɾϥΠϒϥϦͰ͋ͬͯɺϑϨʔϜϫʔΫͰͳ͍ʢେࣄͳ͜ͱͳͷͰSZ
࠾༻ࣄྫ ւ֎ ࠃ ࢀߟʣIUUQTHJUIVCDPNGBDFCPPLSFBDUXJLJ4JUFT6TJOH3FBDU
Ϣʔβʔͷཁٻେઈࢍ૿த ࠷ۙͷϑϩϯτΤϯυ ɾεϚϗͷීٴ ɾΫϥΠΞϯτͷੑೳ্ ɾωΠςΟϒΞϓϦͷීٴ
ɾͬͱϦΞϧλΠϜʹಈ͔͍ͨ͠ ɾωΠςΟϒΞϓϦΑΖ͘͠ϖʔδભҠͰΞχϝʔγϣϯͱ͔͚͍ͭͨʂ ɾͬͱϨεϙϯεૣ͘ʂ ɾͱ͍͏͔Ϧϩʔυ͢Δͨͼʹը໘͕ന͘ͳΔͷϢʔβʔମݧ్ΕΔ ͔ΒϠμ વ8FCΞϓϦͷը໘ଆͷཁٻ૿͑Δ ͜ΕΒͷཁٻ"KBY +BWB4DSJQU +2VFSZ ͰղܾͰ͖Δ
ղܾͰ͖Δ͕ɺอक͕࣮ͯ͘͠ࠔΛۃΊΔ
ϑϩϯτΤϯυΛϦονʹ͢ΔͨΊͷ՝ ɾ+BWB4DSJQU͔Βͷैདྷͷ%0.ૢ࡞͍͠ ɾݟͨͱσʔλ͕Ͱ͖͍ͯͳ͍ ɾσʔλ͕มߋ͞Εͨͱ͖ͷը໘ͷมߋࣗͰॻ͔ͳ͍ͱ ͍͚ͳ͍ ɾ͍ͭͲ͜Ͱ୭͕࣋ͬͯΔσʔλ͕มΘͬͯɺը໘ͷͲ͕͜ มΘΔͷ͔ཧ͖͠Εͯͳ͍
3FBDU͕ࢦ͢ੈք ɾσʔλʢ+40/Ͱอଘʣͱը໘Λදࣔ͢Δ෦ʢίϯϙʔ ωϯτʣΛ໌֬ʹΓ͢ ɾը໘Λඳը͢Δͱ͖ɺࠓͷσʔλͷঢ়ଶ͔Β)5.-ΛΫ ϥΠΞϯτଆͰ࡞ͯ͠දࣔ͢Δ ɾอଘ͞Εͨσʔλ͕ॻ͖͑ΒΕͨͱ͖ɺ·ͣอଘͯ͠ ͍ΔσʔλΛॻ͖͑ͯɺॻ͖͑݁ՌΛͱʹ͏Ұճ৽ ͍͠)5.-Λશ෦࡞Γ͢
อଘ͞Εͨσʔλ͕ॻ͖͑ΒΕͨͱ͖ɺ·ͣอଘ͍ͯ͠ ΔσʔλΛॻ͖͑ͯɺॻ͖͑݁ՌΛͱʹ͏Ұճ৽͠ ͍)5.-Λશ෦࡞Γ͢
Ҿ༻ IUUQCMPHNBTVJESJWFKQSFBDU αʔόʔαΠυੜͱಉ͡ΈΛΫϥΠΞϯτͰ
۩ମతʹͲʔ͢Μͷ͔ʁ
৮ͬͯΈ·͠ΐ͏ ΧϯτΞοϓʂ
4UBUF SFOEFS TFU4UBUF ొਓ
Ԡ༻ͷαϯϓϧʢ͓Εͷͱ͎ʔͲ͎ʔʣ 5PEP-JTU 5PEP 5PEPՃϑΥʔϜ ɾ5PEPΛදࣔͰ͖Δ ɾྃͨ͠5PEPΛऔΓফ͠ઢͰදݱͰ͖Δ ɾ৽͘͠5PEPΛՃͰ͖Δ
)5.-ͷߏΠϝʔδ 5PEP-JTU 5PEP 5PEP'PSN
σʔλͱඳը͢Δ෦Λ දࣔʹ͍ͬͯΔݩσʔλ 3FBDUͰσʔλTUBUF͔QSPQͷͲͪ Β͔ͷঢ়ଶͰཧ͞ΕΔ
σʔλͱඳը͢Δ෦Λ ඳըʹ͍ͬͯΔςϯϓϨʔτ 5PEP 3FBDUͰ͜͏ͨ͠ςϯϓϨʔτΛίϯϙʔωϯτͱ͍͏ ෳͷίϯϙʔωϯτΛ࡞ͬͯผͷίϯϙʔωϯτΛ࡞Δ ͜ͱՄೳ
)5.-ͷߏΠϝʔδ 5PEP-JTU 5PEP 5PEP'PSN ɾTUBUFͷσʔλʢॻ͖͑ΒΕΔσʔλʣ ɾ5PEP-JTUίϯϙʔωϯτ ɾ5PEPίϯϙʔωϯτ ɾ5PEP-JTU͔ΒΒͬͨ5PEPΛදࣔ͢ ΔͨΊʹඞཁͳQSPQͷσʔλʢ͜ͷσʔ λॻ͖͑Ͱ͖ͳ͍ʣ
ɾ5PEP'PSNίϯϙʔωϯτ
5PEP-JTU ɾ5PEPΛ̐ݸ࡞Δ ɾ5PEP-JTU5PEPʹରͯࣗ͠ͷTUBUF ΛQSPQͱͯ͢͠ ɾ5PEP'PSN ɾ࡞ͬͨ5PEPͭΛຒΊࠐΈ ɾ5PEPͭ 5PEP'PSNʹ5PEP-JTU
σʔλͷྲྀΕ 5PEP-JTU 5PEP 5PEP'PSN ɾTUBUFͷσʔλʢॻ͖͑ΒΕΔσʔλʣ ɾ5PEP-JTUίϯϙʔωϯτ ɾ5PEPίϯϙʔωϯτ ɾ5PEP-JTU͔ΒΒͬͨ5PEPΛදࣔ͢ ΔͨΊʹඞཁͳQSPQͷσʔλʢ͜ͷσʔ λॻ͖͑Ͱ͖ͳ͍ʣ
ɾ5PEP'PSNίϯϙʔωϯτ ᶄTUBUF͕มΘͬͨͷͰ ͏ҰσʔλΛ͠ ͢ ᶃ`ೖྗσʔλ ᶃॳظදࣔͷͨΊͷ TUBUFσʔλ ᶃEPOFͷCPPMͷมߋ
ϙΠϯτ ɾσʔλTUBUF͔QSPQͱͯ͠อ͢Δ ɾίϯϙʔωϯτࣗͷ࣋ͬͯΔTUBUF͔QSPQΛͬͯ )5.-Λදࣔ͢Δ ɾίϯϙʔωϯτࢠίϯϙʔωϯτʹࣗͷTUBUF͔QSPQ Λ͢͜ͱ͕Ͱ͖Δ ɾը໘Λॻ͖͍͑ͨͱ͖ɺҰճTUBUFΛॻ͖͑Δඞཁ ͕͋ΔɻQSPQॻ͖͑Δ͜ͱ͕Ͱ͖ͳ͍ʂ
දͰൺΔϑϩϯτΤϯυ खܰ͞ େنɾෳࡶ ރΕ͍ͯΔ͔ +2VFSZ ˕ º ˓ "OHVMBS ˓
˓ ˚ 3FBDU 'MVY ˚ ˕ ˚
3FBDU͓ΘΓ
3FEVY 'MVY
'MVYઃܭࢥɾ3FEVYͦͷ࣮ ΦϒδΣΫτࢦˠ+BWB 3VCZ 1FSM .7$ˠ4QSJOH 3VCZPO3BJMT "OHVMBS 'MVYˠ3FEVY
̐ߦͰΘ͔Δ'MVY ɾσʔλͷྲྀΕΛ̍ํʹ͢Δͷ͕త ɾϓϩάϥϜΛ7JFX "DUJPO %JTQBUDIFS 4UPSFͷ̐ͭͷׂͰׂ ͢Δ ɾ͜ͷ̐ͭΛ0CTFSWFSύλʔϯͰͭͳ͛Δ ɹ
ɾ7JFXˠ"DUJPOˠ%JTQBUDIFSˠ4UPSFˠ7JFX ͋ΔϓϩάϥϜͷ෦ͷঢ়ଶ͕มΘͬͨͱ͖ɺঢ়ଶ͕มΘͬͨ͜ͱΛΒͤΔͨΊͷςΫχοΫɻ ɹΦϒδΣΫτࢦϓϩάϥϛϯάͷσβΠϯύλʔϯͷҰछ
ͭ·Γɺ'MVYͱ0CFTFSWFS ύλʔϯͩͬͨΜͩΑʂʂʂ 'BDFCPPL͕ͬͨͷɺ0CTFSWFSύλʔϯΛ࿈ͤ͞Δઃܭʹ 'MVYͱ໊͚ͯΈΛͭͬͨ͘͜ͱ ࢀߟ IUUQJOTJEFQJYJWOFUFOUSZ
ϑϩϯτΤϯυΛϦονʹ͢ΔͨΊͷ՝ ɾ+BWB4DSJQU͔Βͷैདྷͷ%0.ૢ࡞͍͠ ɹ ɾݟͨͱσʔλ͕Ͱ͖͍ͯͳ͍ ɾσʔλ͕มߋ͞Εͨͱ͖ͷը໘ͷมߋࣗͰॻ͔ͳ͍ͱ ͍͚ͳ͍ ɾ͍ͭͲ͜Ͱ୭͕࣋ͬͯΔσʔλ͕มΘͬͯɺը໘ͷͲ͕͜ มΘΔͷ͔ཧ͖͠Εͯͳ͍ ͓͞Β͍
ϑϩϯτΤϯυΛϦονʹ͢ΔͨΊͷ՝ ɾ+BWB4DSJQU͔Βͷैདྷͷ%0.ૢ࡞͍͠ ɹˠ%0.ૢ࡞ͷ෦3FBDUKT͕ͬͯ͘ΕΔ ɾݟͨͱσʔλ͕Ͱ͖͍ͯͳ͍ ɹˠσʔλ+40/ͱͯ͠อ࣋ɾڙڅ͞ΕΔ ɾσʔλ͕มߋ͞Εͨͱ͖ͷը໘ͷมߋࣗͰॻ͔ͳ͍ͱ ͍͚ͳ͍ ɹˠσʔλ͕มΘΔͱ3FBDU͕উखʹSFOEFSϝιουΛݺ ΜͰ࠶ඳըͯ͘͠ΕΔ ɾ͍ͭͲ͜Ͱ୭͕࣋ͬͯΔσʔλ͕มΘͬͯɺը໘ͷͲ͕͜
มΘΔͷ͔ཧ͖͠Εͯͳ͍ ɹˠͦͦ3FBDUϏϡʔϥΠϒϥϦͳͷͰ֎ ͓͞Β͍
Ҿ༻ IUUQCMPHNBTVJESJWFKQSFBDU αʔόʔαΠυੜͱಉ͡ΈΛΫϥΠΞϯτͰ ঢ়ଶཧΫϥΠΞϯτͰ
ɾ5PEPͷ༰ɺྃঢ়ଶ ɾ5PEPͷදࣔ݅ʢશ෦ɺະྃɺྃʣ ɾͲͷϖʔδΛݟ͍ͯΔ͔ʢද͍ࣔͯ͠Δϖʔδͱ63- ɾ5PEPೖྗίϯϙʔωϯτ͕։͍͍ͯΔ͔ด͍ͯ͡Δ͔ ɾ5PEPೖྗϑΥʔϜʹೖ͍ͬͯΔσʔλͷ༰ ɾͲͷΞχϝʔγϣϯΛͬͯભҠ͢Δ͔ ۩ମྫ ࠓճ41"Ͱ࡞ͬͨ5PEPΞϓϦ͕ཧ͠ͳ͚Ε ͳΒͳ͍ը໘ଆͷঢ়ଶ
୯७ͳΞϓϦͰɺཧ͠ͳ͚ΕͳΒͳ͍ঢ়ଶͨ͘͞Μɻ
ͳͥ'MVY͕ඞཁͩͬͨͷ͔ʁ ɾ'BDFCPPLίʔυ͕Ͱ͔͘ͳΓ͗ͨ͢ ɾ̍ߦ͢ͱͭόάΔϋϧͷಈ͕͘Ͱ͖͕͍͋ͬͯͨ ʢΒ͍͠ʣ ɾ͔͠Ͳͷίʔυ͕Ͳ͏͍͏ॱংͰঢ়ଶը໘Λॻ͖͑ ͍ͯΔͷ͔Θ͔Βͳ͍͜ͱ͕ݪҼ ࢀߟ IUUQTNFEJVNDPN!TPUBZBNBTIJUB&#$"#&##&"&"""$ &&&&#qVYBFCNMREIULH
ํʹσʔλͷΓऔΓ͕ ͋Δ͔ΒΘ͔Γʹ͍͘
σʔλͷྲྀΕΛҰํʹͪ͠Ό͑Ͳ͜ ͰԿΛॻ͖͔͑ͨΘ͔Γ͍͢͠τϨʔ ε͍͢͠ΑͶʂ
֤෦ͷׂ୲ ɾ7JFXɹˠɹ͞ΕΔσʔλʹج͍ͮͯը໘Λඳը 3FBDUKT͕୲ʣ ɹɹɹɹɹɹɹ4UPSFͷมԽΛMJTUFO͍ͯ͠Δɻ ɾ"DUJPOˠɹΞϓϦέʔγϣϯͷঢ়ଶͷมߋը໘ͷมߋ࣌ʹൃՐ͢ΔΠϕϯτɹɹ ɹɹɹɹɹɹɹͱͲΜͳมߋ͕ى͖Δ͔ͷ༰ ɾ%JTQBUDIFSˠɹ"DUJPO͕ൃߦ͞Ε͔ͨΛ4UPSFʹ͑Δɻ ɹɹɹɹɹɹɹɹɹͲͷ4UPSFʹ͑Δ͖͔%JTQBUDIFS͕͍ͬͯΔɻ ɾ4UPSFˠσʔλঢ়ଶͷอॴɻ%JTQBUIFS͔ΒσʔλΛड͚औΔͱɺ ɹɹɹɹɹࣗͷσʔλΛॻ͖͑ͯɺ7JFXʹʮσʔλ͕มΘ͔ͬͨΒ
ɹɹɹɹɹ࠶औಘͯ͠࠶ඳըΦφγϟεʯ͢Δ
.7$ͱ'MVYͷͬ͘͟Γൺֱ ը໘ ϦΫΤετ Ϩεϙϯε Ϟσϧɾ%# ίϯτϩʔϥʔ 7JFX "DUJPO %JTQBUDIFS 4UPSF
"DUJPO αʔόʔαΠυ SFOEFS ඞཁͩͬͨΒ͜͜Ͱαʔόʔ௨৴
7JFX͞ΜɿʮΧʔτՃ͍ͨ͠ΜͰ"DUJPOൃߦ͠·͢ʯ %JTQBUDIFS͞ΜɿʮΧʔτՃ͍ͨͬͯ͠"DUJPOདྷͨΜ ͰɺՃ༰Λ৽͘͠ΧʔτσʔλͷอݿʹՃͯͩ͘͠ ͍͞ʯ Χʔτ୲ͷ4UPSF͞ΜɿʮݴΘΕͨ௨ΓΧʔτσʔλΛ Ճ͔ͨ͠Βɺ7JFX͞ΜσʔλΛऔͬͯ࠶ඳըͯͩ͘͠͞ ͍ʯ ͬͱ؆୯ʹ͓ئ͍͠·͢
3FEVYͱ ɾ'MVYͷߟ͑ํΛ࣮ͨ͠ϑϨʔϜϫʔΫͰ͢ ɾ'MVY࣮ͷதͰຊՈ'BDFCPPLͷͷΛൈ͍ͯݱࡏҰ൪ਓؾ ɾొਓ"DUJPO 3FEVDFS 4UPSF 7JFX ɾ%JTQBUDIFSΦϒδΣΫτ͔Βͨͩͷϝιουʹ֨Լ͛ ɾ"DUJPOશͯ3FEVDFS͕ड͚औΔɻड͚औͬͨ༰Λղऍ͠ ͯ4UPSFΛߋ৽͢Δͷ͕3FEVDFSͷࣄ
ࢀߟʣIUUQTEFWFMPQFSTFVSFKQUFDISFEVY@GFBUVSF
3FEVYσʔλͷྲྀΕҰํ ɾ7JFX͕ΠϕϯτʹԠͯ͡"DUJPOΛ࡞ΔΑ ɾEJTQBUDIϝιουͰ3FEVDFSʹ"DUJPOͷൃߦΛΒͤΔΑ ɾ3FEVDFSड͚औͬͨ"DUJPOΛͱʹ4UPSFͷঢ়ଶΛม͑ΔΑ ɾ4UPSFมߋ͕͋ͬͨΒ7*FXʹมߋΛ͑ΔΑ Ҿ༻ IUUQTTQFBLFSEFDLDPNBYSPTTJOUSPEVDUJPOUPSFEVY
࣮ࡍʹಈ͔ͯ͠Έ·͢
࣮ࡍͬͯΈͯײͨ͡ϝϦοτ ɾͲ͜Ͱೖྗ͕ى͖ͨΒ࣍Ͳ͜ʹσʔλ͕ྲྀΕΔ͔ܾ·ͬ ͍ͯΔͷͰɺͷೝࣝΓָ͚͕ ɾ'MVYͱ͍͏ΈͷதͰɺͲ͜ʹͲΜͳॲཧΛॻ͖͔͘ ͕ཧ͞Ε͍ͯΔͨΊɺ͋Μ··ͳͯ͘ࡁΉ
࣮ࡍͬͯΈͯײͨ͡σϝϦοτ ɾॻ͍͍ͯΔͱͬͺΓʹͳΔέʔε͕͋Δʢίϯϙʔω ϯτͷ͋Δ෦ͷදࣔඇදࣔͷτάϧॲཧΛॻͨ͘Ίʹ'MVYΛ Ұपॻ͘ͷΩπΠʣ ɾXBZCJOEJOHͷ΄͏͕ॻ͘ίʔυগͳͯ͘ࡁΉ ɾ+4ͷߥ͔ΒඞཁͰϝϯς͞ΕͯͯϝδϟʔͳϥΠϒϥϦΛ ࣗͰબఆ͠ͳ͍ͱ͍͚ͳ͍
3FBDU 'MVY͕͍͍ͯΔͷ ɾେنͳ41"ͷ࡞ ɹ ɾը໘ଆͷ͋ΒΏΔͱ͜ΖͰΠϕϯτ͕ൃੜ͢ΔΞϓϦ ɾϦΞϧλΠϜʹαʔόʔͱΓͱΓͯͦ͠ͷ݁ՌΛදࣔ͢ ΔΑ͏ͳΞϓϦ ཁ͢Δʹେ͖ͯ͘ෳࡶͳϑϩϯτΤϯυػೳΛ ࣋ͬͨΞϓϦΛഁͳ͘࡞Δ͜ͱʹ͍͍ͯΔ
࣭λΠϜ .BUFSJBM%FTJHOͱ͔$44.PEVMFͱ͔σβΠϯ࣮ؔ࿈ͷͲ͏ͧ
࠷ޙʹ
ϑϩϯτΤϯυઓࠃ࣌
ٕज़ͷมԽ͕ੌ͘ૣ͍̍͠ લʹྲྀߦٕͬͨज़͕ഇΕͯΔ ͳΜͯ͜ͱ͋Δ
Ͱɺͦͷྺ࢙ܨ͕͍ͬͯ Δ͠ɺߟ͑ํ͕ࣺͨͩͨͩͯ ΒΕ͍ͯΔΘ͚Ͱͳ͍͠ɺ ݱࡏʹӨڹΛ༩͍͑ͯΔ
ͦͷٕज़͕ͳͥग़དྷͨͷ͔ɺԿ Λղܾ͢Δͷ͔ਖ਼͘͠ཧղͨ͠ ্Ͱɺࠓඞཁͳٕज़ΛબͰ͖ Δͱ͍͍Ͱ͢Ͷʂ