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
コワクナイヨ TypeScript - static typing reloaded -
Search
dojineko
May 15, 2019
Technology
8
2.6k
コワクナイヨ TypeScript - static typing reloaded -
dojineko
May 15, 2019
Tweet
Share
More Decks by dojineko
See All by dojineko
iOSのWebViewとClipboardAPI / WebView and ClipboardAPI on iOS
dojineko
0
63
最近のUnityとVRChat / About Unity and VRChat recently
dojineko
0
150
WebXRでポートフォリオを作ろう/Let's make your portfolio with WebXR!
dojineko
0
160
ペパボ ホスティング事業部のWebフロントエンドについて 2022 / About Web Frontend of Pepabo Hosting division 2022
dojineko
1
9.2k
Viteはいいぞ/Vite is Good
dojineko
1
740
はじめてでもできた!VR登壇への道 / Let's VR speech!
dojineko
0
420
gRPC-WEBを使ったWEBアプリ開発/Development web-app with gRPC-WEB
dojineko
1
930
もう俺には関係なくないTypeScript/Our TypeScript
dojineko
3
350
TypeScript ではじめる Clean Architecture / Let's start Clean Architecture with TypeScript
dojineko
2
3.3k
Other Decks in Technology
See All in Technology
AIのAIによるAIのための出力評価と改善
chocoyama
0
400
監視のこれまでとこれから/sakura monitoring seminar 2025
fujiwara3
10
2.6k
評価の納得感を2段階高める「構造化フィードバック」
aloerina
1
280
[TechNight #90-1] 本当に使える?ZDMの新機能を実践検証してみた
oracle4engineer
PRO
3
110
BigQuery Remote FunctionでLooker Studioをインタラクティブ化
cuebic9bic
2
200
~宇宙最速~2025年AWS Summit レポート
satodesu
1
650
Cloud Native Scalability for Internal Developer Platforms
hhiroshell
2
490
TechLION vol.41~MySQLユーザ会のほうから来ました / techlion41_mysql
sakaik
0
130
kubellが挑むBPaaSにおける、人とAIエージェントによるサービス開発の最前線と技術展望
kubell_hr
1
390
データプラットフォーム技術におけるメダリオンアーキテクチャという考え方/DataPlatformWithMedallionArchitecture
smdmts
4
470
原則から考える保守しやすいComposable関数設計
moriatsushi
3
490
JSX - 歴史を振り返り、⾯⽩がって、エモくなろう
pal4de
3
1k
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
53
11k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
480
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Unsuck your backbone
ammeep
671
58k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Faster Mobile Websites
deanohume
307
31k
The Invisible Side of Design
smashingmag
299
51k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
A Tale of Four Properties
chriscoyier
159
23k
Transcript
TUBUJDUZQJOHSFMPBEFE EPKJOFLP(.01FQBCP *OD 'VLVPLB+4 ίϫΫφΠϤ5ZQF4DSJQU
5ZQF4DSJQU ͬͯ·͔͢ʁ
࠷ۙͷ5ZQF4DSJQUμΠδΣετ w 5ZQF4DSJQU w ΠϯΫϦϝϯλϧϏϧυͷαϙʔτɺδΣωϦΫεؔͷߴ֊ܕਪɺ3FBEPOMZͷվྑɺ DPOTUͷܕએݴɺHMPCBM5IJTͷܕνΣοΫαϙʔτ w5ZQF4DSJQU w6OJPOܕͷܕਪͷվྑɺ૿ϑΝΠϧࢹͷαϙʔτ w5ZQF4DSJQU wTUSJDU#JOE$BMM"QQMZͷՃɺ#JH*OUͷαϙʔτɺ
֎෦ύοέʔδͷUTDPOpHKTPOར༻ͷαϙʔτͳͲ ·ͩ·ͩ͋ΔκΠʁ
࠷ۙͷ+BWB4DSJQUμΠδΣετ wΫϥεߏจͷQSJWBUFpFME͕$ISPNFʹ࣮͞Εͨ w 5ZQF4DSJQUଆ·ͩτϥϯεύΠϧͷ࣮Ҋ·ͩݕ౼த w QSJWBUFpFMEͷఆٛΛಠࣗͰ͍࣋ͬͯΔͷͰࠓޙ͕ؾʹͳΓ·͢Ͷ w SFGIUUQTHJUIVCDPN.JDSPTPGU5ZQF4DSJQUJTTVFT w/PEFKTWͰNKT͡Όͳͯ͘&4.PEVMFͱͯ͠ಈ࡞͢ΔΑ͏ʹ w
QBDLBHFKTPOʹUZQFNPEVMFΛՃ͢Δͱ&4.PEVMFͰಈ͘ύοέʔδʹ w ʮFYQFSJNFOUBMNPEVMFTʯ͕ͬͺΓඞཁ
͓͓͍Α
ʮ5ZQF4DSJQUΛ࢝Ί͍͚ͨͲ ͪΐͬͱΘ͔Βͳ͍ʜʯ
ίϫΫφΠϤ 5ZQF4DSJQU
ΑΖͣ !EPKJOFLP GVLVPLBUTΛΑΖ͘͠Ͷʂ
ૣͰ͕࣌ؒ͢ͷ্ؔ w5ZQF4DSJQUͷେ·͔ͳઆ໌ԼهͷεϥΠυʹҠৡ͠·͢ w ଟωλͷେ෦͕͔Ϳͬͯͦ͏ɾɾɾ͍ͦ͏ʹҧ͍ͳ͍ʂ Ч㱬ŞƄţƃ wಋೖ͚ͷ༰ͬͪ͜Λݟͯ͘ΕΔͱخ͍͠ͳ ͪΐͬͱݹ͍Ͱ͢ IUUQTTQFBLFSEFDLDPNEPKJOFLPUZQFTDSJQUSPBEUPTUBUJDUZQJOHPKJTBO
ࠓճ͢͜ͱ w Ҡߦʹࡍͯ͠ͷUTDPOpHKTPO w UTDͱ#BCFM w BOZͱVOLOPXO w 54-JOUͱ&4-JOU w
TUSJDUUSVFͷಓ
UTDPOpHKTPOʹԿΛॻ͚͍͍ͷʁ w5ZQF4DSJQUΛ+BWB4DSJQUʹม͢Δͱ͖ͷઃఆΛॻ͖·͢ w/PEFKT༻ɺϒϥβ༻ͳͲͷग़ྗ݁ՌͷΓସ͑ wͲͷϨϕϧ·Ͱͷ&$."4DSJQUͷػೳΛ͏͔ wࢼݧత࣮ %FDPSBUPSͳͲ ͷ༗ޮԽ wܕνΣοΫͷϨϕϧ wͳͲͳͲ
None
ઃఆ େਿ
UTDPOpHKTPO͜Ε͚ͩॻ͍ͱ͚େৎ w+4͔ΒͷҠߦͷ߹ɺͱʹ͔͘ΏΔΊʹઃఆ͢Δͷ͕ϛιʂ w͍͖ͳΓʮTUSJDUUSVFʯ͓͢͢Ί͠·ͤΜɻ w ϩτͷ༐ऀͩͬͯʮ͔ΘͷͨͯʯͰग़ൃ͢ΔΑͶ wNPEVMFFTOFYU͕͓͢͢ΊʮΨϯΨϯ͍͜͏ͥʯ w ͔ͤͬ͘ΔͳΒ&$."4DSJQUͷ৽͍͠ػೳΛ͍ͬͯ͜͏ʂ ͦͷ΄͏͕ϩϚϯ͕͋Δ
wUBSHFUઃఆ*&ແࢹͰ͖ΔͳΒFTɺͩΊͳΒFT wҊ݅ʹԠͯ͡QPMZpMMJPCBCFMQPMZpMMΛซ༻͠·͠ΐ͏
ઃఆྫ *&͚ͷΏΔʔ͍ઃఆ ग़ྗ݁Ռ&4ͷൣғͰ ͏ػೳ࠷৽ͷػೳͰ $PNNPO+4ͱ&4Ϟδϡʔϧͷҧ͍Λ ͳΔ͘ҙࣝ͠ͳͯ͘ྑ͍Α͏ʹ͢Δ #BCFMతͳͭ 5ZQF4DSJQU͔Β+BWB4DSJQUͷ *NQPSUΛڐՄ͢Δ ಡΈࠐΉϑΝΠϧΛࢦఆ
ϏϧυΛ͍ͨ͠ରΛ໌ࣔ͢Δ
ࠓճ͢͜ͱ w Ҡߦʹࡍͯ͠ͷUTDPOpHKTPO w 5ZQF4DSJQUͱ#BCFM w BOZͱVOLOPXO w 54-JOUͱ&4-JOU w
TUSJDUUSVFͷಓ
#BCFM͞Μͷֵ໋తΞοϓσʔτ w#BCFM͔Β5ZQF4DSJQUͷ τϥϯεύΠϧ͕ਖ਼ࣜαϙʔτ w#BCFMͰτϥϯεύΠϧ͢Δ߹ Ұ෦ͷػೳ͕͑·ͤΜ w OBNFTQBDF+49ͷܕΞϊςʔγϣϯɺ&OVNͷએ ݴͷϚʔδɺτϥϯεύΠϧ࣌ͷܕνΣοΫͳͲ
UTDͱ#BCFMͲͬͪΛ͍͍͑ͷʁ wUTD͕͓͢͢Ίͳ߹ w ܕνΣοΫΛݫີʹߦ͍͍ͨ߹ w 5ZQF4DSJQUͷػೳΛϑϧʹ׆༻͍͖͍ͯͨ͠߹ w#BCFM͕͓͢͢Ίͳ߹ w ͢Ͱʹ#BCFMͷΧελϚΠζΛߴʹߦ͍ͬͯΔ߹ w
ຊ࣭తʹܕνΣοΫΛඞཁͱ͍ͯ͠ͳ͍߹ w τϥϯεύΠϧΛॏࢹ͢Δ߹ ܕνΣοΫ͚ͩUTDΛซ༻͢Δύλʔϯ༗Γ ಋೖ͢ΔϓϩδΣΫτͷঢ়ଶΛݟͯ ͱʹ͔͘ແཧͷͳ͍બΛߦ͍·͠ΐ͏ #BCFMΛഇࢭͯ͠UTDΛ͏ɺ ͋Δ͍ͦͷٯׂͱ؆୯ʹग़དྷ·͢
ࠓճ͢͜ͱ w Ҡߦʹࡍͯ͠ͷUTDPOpHKTPO w UTDͱ#BCFM w BOZͱVOLOPXO w 54-JOUͱ&4-JOU w
TUSJDUUSVFͷಓ
VOLOPXOܕͱ w5ZQF4DSJQUͰՃ͞Εͨ৽ͨͳܕ wೖʹ͍ͭͯBOZܕͱಉ͡ wVOLOPXOܕͷΛ༻͢Δ߹ܕΞαʔγϣϯ͕ඞཁʹͳΔ wBOZܕʹ͢Δ͜ͱͰܕνΣοΫ͕શʹΨϥۭ͖ʹͳΔΛ ղܾ͢ΔͨΊͷखஈͷ̍ͭͱͯ͑͠Δ w5ZQF4DJSQUΛखݎ͘ӡ༻͢ΔͳΒ͍͖͍ͬͯͨػೳͷ̍ͭ
༻ྫ BOZܕͩͬͨΒ ʮଘࡏ͠ͳ͍ؔʯ࣮ؔߦ࣌ʹ ଘࡏ͠ͳ͍ͷͰVOEFpOFE ͍͜͠ ͚ͩͲίϯύΠϧ࣌ʹνΣοΫͰ͖ͳ͍
༻ྫ VOLOPXOܕʹ͢Δͱ VOLOPXOܕΛͦͷ··͍ͬͯΔՕॴΛ ίϯύΠϧ࣌ʹݕͰ͖Δ ༻࣌ʹඞͣΞαʔγϣϯ͕ඞཁʂ ݁Ռଘࡏ͠ͳ͍ؔΛݺͼग़͍ͯ͠Δ Α͏ͳՕॴΛݕ͢Δ͜ͱ͕Ͱ͖Δ
ࠓճ͢͜ͱ w Ҡߦʹࡍͯ͠ͷUTDPOpHKTPO w UTDͱ#BCFM w BOZͱVOLOPXO w 54-JOUͱ&4-JOU w
TUSJDUUSVFͷಓ
͜͜େࣄͳͱ͚ͩ͜ w54-JOUͷ༻ඇਪʹͳΓ·ͨ͠ w ৽نҊ݅&4-JOUͰ࢝ΊΔ͜ͱΛ͓͢͢Ί͠·͢ w&4-JOUͷ5ZQF4DSJQUαϙʔτ·ͩ·ͩ͜Ε͔Β w OPqPBUJOHQSPNJTFͷΑ͏ͳ5ZQF4DSJQUͷܕใʹجͮ͘-JOUJOHશʹҠߦͰ͖ ͳ͍ͷͰ߹ʹΑͬͯ·༷ͩࢠݟ͍͓͍ͯͨ͠΄͏͕ྑ͍͔ʁ wͱ͍͑&4-JOUʹҠߦ͠ͳ͚Εͳ͘ͳΔͷ࣌ؒͷ w
Ջ͕͋ΕҠߦ͓͖ͯ͠·͠ΐ͏ʂ w ୲ϓϩδΣΫτͰͻͱ·ͣҠߦͷ४උ͚ͩࡁ·͍ͤͯ·͕͢54-JOU͕·ͩݱͰ͢ɻ
࣌ؒΓͯΔͷ͔ͳʁ w Ҡߦʹࡍͯ͠ͷUTDPOpHKTPO w UTDͱ#BCFM w BOZͱVOLOPXO w 54-JOUͱ&4-JOU w
TUSJDUUSVFͷಓ
ΑΓखݎ͘ӡ༻͍ͯ͘͠ϙΠϯτ wVOLOPXOΛ͍ͬͯ͘ w BOZΛ͏ΑΓɺVOLOPXOΛ͏ͷ͕͓͢͢Ί wܕఆٛΛ͏ɺແ͍ఆٛॻ͘ w ৽نͷఆٛɺఆٛͷߋ৽13͢ΔͱΈΜͳͤʹͳΕΔ wUTDPOpHKTPOͰTUSJDUUSVFΛઃఆ͢Δ w ΑΓڧ੍͘Λֻ͚ͯӡ༻͢Δ͓ؾ࣋ͪͷද໌
w ඞͣ͠ඞཁͰͳ͍͕खݎ͘ͳΔ TUSJDUUSVFΛઃఆ͢Δ Ϟνϕʔγϣϯͬͯ ͳΜͩΖ͏ʁʁʁ
TUSJDUUSVFͷޮՌͱʁ w࣮खݎ͘ӡ༻͢ΔͨΊͷෳͷϧʔϧ͕·ͱΊͯద༻͞ΕΔ w OP*NQMJDJU"OZ҉ͷBOZͷ༻Λېࢭ͢Δ w OP*NQMJDJU5IJTUIJTͷܕΛ໌ࣔ͢Δ͜ͱΛཁٻ͢Δ w BMXBZT4USJDUग़ྗ݁ՌʹৗʹVTFTUSJDUΛࢦఆ͢Δ w TUSJDU#JOE$BMM"QQMZCJOE
DBMM BQQMZͷܕਪΛݫີʹߦ͏ w TUSJDU/VMM$IFDLTݫີͳOVMMͷνΣοΫΛߦ͏ w TUSJDU'VODUJPO5ZQFTݫີͳؔͷܕͷνΣοΫΛߦ͏ w TUSJDU1SPQFSUZ*OJUJBMJ[BUJPOॳظԽ͞Ε͍ͯͳ͍ΫϥεϓϩύςΟΛېࢭ͢Δ όʔδϣϯʹΑͬͯద༻͞ΕΔ ϧʔϧएׯҟͳΓ·͢
TUSJDUUSVFΛద༻͢Δ͜ͱྑ͍͜ͱʁ wద༻Ͱ͖ΔͳΒ͓͍ͯͨ͠΄͏͕खݎ͘ͳΔ͠ྑ͍͜ͱʂ w͔͠͠ඞਢͰͳ͍͠ɺΰʔϧͰͳ͍ wద༻͠ͳ͍͔Βѱ͍ͱ͍͏͜ͱͳ͍ wཧղΛಘͳ͕Βɺظతʹɺແཧͳ͘ ӡ༻Ͱ͖ΔΑ͏ʹ͍ͯ͘͜͠ͱ͕େࣄ wTUSJDUUSVFʹ͢Δ߹ݸผͷϧʔϧΛద༻੍͍͖ͯ͠Λঃʑʹ ڧΊ͍ͯ͘͜ͱΛ͓͢͢Ί͠·͢
TUSJDUUSVFͷಓ TUSJDUUSVFͷࢼݧద༻ͱݱঢ়Ѳ wΛѲ͢ΔͨΊ͚ͩʹҰ࣌తʹద༻ OP*NQMJDJU"OZҎ֎ͷద༻ w҉ͷBOZ༻Օॴ͕ଟʑ͋ͬͨͨΊ OP*NQMJDJU"OZͷద༻ w͚ͭͯ֎͠Λ܁Γฦͯ͠ՕॴΛۦஞ
ݸผద༻ΛTUSJDUUSVFஔ͖͑ͯ·ͱΊΔ ҎޙTUSJDUUSVFͰͷӡ༻Λܧଓ ݱࡏʹࢸΔ
TUSJDUUSVFΛద༻ͨ͜͠ͱʹΑΔޮՌ w੍͕ڧԽ͞ΕΔͨΊɺΑΓΤϥʔݕͷਫ਼্͕͕Γ·ͨ͠ wͨͩ͠ɺ੍͕ڧԽ͞Εͨ͜ͱʹΑΓ5ZQF4DSJQU ੩తܕ͚ݴޠ ͷʮ͜ͳΕײʯ͕ඞཁʹͳΓ·ͨ͠ w+BWB4DSJQU͔ΒҠ͖͔ͬͯͨΓͩͱɺετϨεʹײ͡Δ෦͕ग़ ͯ͘Δ͔͠Ε·ͤΜ ࠓຆͲͦΜͳ͜ͱແ͍Ͱ͢ w͠ΔͳΒʮ͖ΐ͏͍ͤΪϓεʯΛ͚ͭͯ࿅शͯ͠ΔཧղͰྟΈ·
͠ΐ͏
·ͱΊ
·ͱΊ w5ZQF4DSJQUίϫ͘ͳ͍ʂ w ΏΔʔ࢝͘Ίͯશવ0,ʂ w ͳΜͳΒܕఆ͚ٛͩͬͯΤσΟλͰิͤ͞Δ͚ͩͰ0,ʂ w#BCFMͰ5ZQF4DSJQU͑ΔΑ wBOZܕΑΓVOLOPXOܕΛ͏ͷ͕͓͢͢Ί w54-JOU&4-JOUʹஔ͖͍͑ͯ͘४උΛ͠·͠ΐ͏ wTUSJDUUSVFศར͚ͩͲ௧ΈΛ͏ͷͰ
༻๏༻ྔΛकͬͯਖ਼͓͍͍ͩ͘͘͠͞
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠