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
Getting to Know Your Legacy (System) with AI-Driven Software Archeology (WeAreDevelopers World Congress 2025)
feststelltaste
1
120
AI時代の開発生産性を加速させるアーキテクチャ設計
plaidtech
PRO
3
150
Zephyr RTOSを使った開発コンペに参加した件
iotengineer22
1
220
ネットワーク保護はどう変わるのか?re:Inforce 2025最新アップデート解説
tokushun
0
200
Sansanのデータプロダクトマネジメントのアプローチ
sansantech
PRO
0
140
LangChain Interrupt & LangChain Ambassadors meetingレポート
os1ma
2
310
Lazy application authentication with Tailscale
bluehatbrit
0
200
SEQUENCE object comparison - db tech showcase 2025 LT2
nori_shinoda
0
120
How Do I Contact HP Printer Support? [Full 2025 Guide for U.S. Businesses]
harrry1211
0
110
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
2
130
生成AI時代の開発組織・技術・プロセス 〜 ログラスの挑戦と考察 〜
itohiro73
1
460
面倒な作業はAIにおまかせ。Flutter開発をスマートに効率化
ruideengineer
0
250
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Building Applications with DynamoDB
mza
95
6.5k
Documentation Writing (for coders)
carmenintech
72
4.9k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
740
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
Automating Front-end Workflow
addyosmani
1370
200k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
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ͱ͔σβΠϯ࣮ؔ࿈ͷͲ͏ͧ
࠷ޙʹ
ϑϩϯτΤϯυઓࠃ࣌
ٕज़ͷมԽ͕ੌ͘ૣ͍̍͠ લʹྲྀߦٕͬͨज़͕ഇΕͯΔ ͳΜͯ͜ͱ͋Δ
Ͱɺͦͷྺ࢙ܨ͕͍ͬͯ Δ͠ɺߟ͑ํ͕ࣺͨͩͨͩͯ ΒΕ͍ͯΔΘ͚Ͱͳ͍͠ɺ ݱࡏʹӨڹΛ༩͍͑ͯΔ
ͦͷٕज़͕ͳͥग़དྷͨͷ͔ɺԿ Λղܾ͢Δͷ͔ਖ਼͘͠ཧղͨ͠ ্Ͱɺࠓඞཁͳٕज़ΛબͰ͖ Δͱ͍͍Ͱ͢Ͷʂ