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
昨今のフロントエンド
Search
Takahiro Shinoda
May 19, 2020
Technology
0
130
昨今のフロントエンド
Takahiro Shinoda
May 19, 2020
Tweet
Share
More Decks by Takahiro Shinoda
See All by Takahiro Shinoda
Firebase Authenticationについて
takashinoda
0
68
Study on participatory projection mapping that can be enjoyed by performers
takashinoda
1
47
Proposal of Interactive Projection Mapping using Human Detection by Machine Learning
takashinoda
0
40
A Proposal of Interactive Projection Mapping Using Kinect
takashinoda
0
43
Other Decks in Technology
See All in Technology
Dylib Hijacking on macOS: Dead or Alive?
patrickwardle
0
460
Linux カーネルが支えるコンテナの仕組み / LF Japan Community Days 2025 Osaka
tenforward
1
120
20251027_マルチエージェントとは
almondo_event
0
320
Building a cloud native business on open source
lizrice
0
180
ローカルLLMとLINE Botの組み合わせ その2(EVO-X2でgpt-oss-120bを利用) / LINE DC Generative AI Meetup #7
you
PRO
1
160
会社を支える Pythonという言語戦略 ~なぜPythonを主要言語にしているのか?~
curekoshimizu
3
660
データ戦略部門 紹介資料
sansan33
PRO
1
3.8k
FinOps について (ちょっと) 本気出して考えてみた
skmkzyk
0
210
AI時代、“平均値”ではいられない
uhyo
8
2.5k
[VPoE Global Summit] サービスレベル目標による信頼性への投資最適化
satos
0
240
頭部ふわふわ浄酔器
uyupun
0
110
Databricks AI/BI Genie の「値ディクショナリー」をAmazonの奥地(S3)まで見に行く
kameitomohiro
1
400
Featured
See All Featured
Scaling GitHub
holman
463
140k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
KATA
mclloyd
PRO
32
15k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Done Done
chrislema
185
16k
Writing Fast Ruby
sferik
630
62k
Building Adaptive Systems
keathley
44
2.8k
How to Ace a Technical Interview
jacobian
280
24k
Transcript
ࡢࠓͷϑϩϯτΤϯυ
JavaScript ૯બڍ
ϑϩϯτΤϯυΧϯϑΝϨϯεԬϠϑʔגࣜձࣾͷϒʔεͰࡱͬͨࣸਅ JavaScript ૯બڍ
JavaScript ૯બڍ
ਓؾ্Ґ
w +BWB4DSJQUͷεʔύʔηοτ w +BWB4DSJQUͰܕఆ͕ٛͰ͖Δ w ίϯύΠϧ͢ΔࣄͰ+BWB4DSJQUΛੜ͢Δ w 74$PEFͱ૬ੑ͕ྑ͍ TypeScript https://www.typescriptlang.org/
w CPPMFBO w OVNCFS w TUSJOH w BSSBZ TypeScriptͷܕ Ұ෦ൈਮ
let flag: boolean = true let decimal: number = 123 let hex: number = 0xfff let myName: string = 'Taro' let list: number[] = [1, 2, 3] ͜ͷ৭ͷจࣈ͕ܕऍ Ξϊςʔγϣϯ ܕऍΛ༩͢ΔࣄͰɺ໌ࣔతʹܕΛ੍͢Δ
ܕ͕͋ΔͱԿ͕ྑ͍ͷ͔ function expo2(amount) { return amount ** 2 } const
value = expo2('1000') // 1000000 const withTax = value * 1.1 ࣮ફ5ZQF4DSJQU#''ͱ/FYUKT/VYUKTͷܕఆٛ٢Ҫ݈จגࣜձࣾϚΠφϏग़൛ΑΓ z+BWB4DSJQUͰɺ࣍ͷίʔυʹͳΓ·ͤΜ จࣈྻͰ͋ͬͯͱͯ͠ѻ͑Δ߹ʹɺ ҉తʹʹมͯ͠͠·͏ͨΊͰ͢ɻ ͜ͷᐆດͳڍಈ͕όάͷԹচʹͳΓɺ ։ൃऀΛ·͖ͤͯ·ͨ͠ɻz
ܕ͕͋ΔͱԿ͕ྑ͍ͷ͔ ܕऍͰܕΛOVNCFSܕʹ͢Εɺ͜ΕΛະવʹ͙ࣄ͕Ͱ͖Δ
JSͷϑϨʔϜϫʔΫɾϥΠϒϥϦ
JSͷϑϨʔϜϫʔΫɾϥΠϒϥϦ ۙΑ͘ฉ͘7VFɾ3FBDU "OHVMBS͞Θͬͨࣄͳ͍ͷͰׂѪ͍ͤͯͩ͘͞͞
npm trends
npm trends SFBDU͕ਓؾͰ͕͢ɺຊͩͱ7VF͕SFBDUҎ্ʹਓؾͳؾ͕͠·͢
ͳͥਓؾͳͷ͔
ͳͥਓؾͳͷ͔ 41"ͷݪଇΛ࠾༻͍ͯ͠Δ
ͳͥਓؾͳͷ͔ 4JOHMF1BHF"QQMJDBUJPO
w 41"ͱɺ୯ҰͷϖʔδͰίϯςϯπͷΓସ͑Λߦ͏8FCΞϓϦέʔ γϣϯΞʔΩςΫνϟͷ໊শ w 41"ͰϒϥβʹΑΔϖʔδભҠΛߦΘͣʹίϯςϯπͷΓସ͑ͳͲ Λߦ͏͜ͱͰɺϢʔβʔମݧ 69 Λେ্͖ͤ͘͞Δ͜ͱ͕Մೳ w ैདྷͷ8FCϖʔδͰભҠ࣌ʹϖʔδશମ͕ॻ͖ΘΔ͕ɺ41"Ͱ+4
Λ༻͍ͯϖʔδͷ)5.-ͷҰ෦Λࠩ͠ସ͑ͯίϯςϯπΛΓସ͍͑ͯ Δɻ͜ΕʹΑΓɺϒϥβͷڍಈʹറΒΕͳ͍6*ͷ࣮ݱɺύϑΥʔϚϯ εͷ্͕Մೳ Single Page Application https://www.oro.com/ja/technology/001/
w 41"ͱɺ୯ҰͷϖʔδͰίϯςϯπͷΓସ͑Λߦ͏8FCΞϓϦέʔ γϣϯΞʔΩςΫνϟͷ໊শ w 41"ͰϒϥβʹΑΔϖʔδભҠΛߦΘͣʹίϯςϯπͷΓସ͑ͳͲ Λߦ͏͜ͱͰɺϢʔβʔମݧ 69 Λେ্͖ͤ͘͞Δ͜ͱ͕Մೳ w ैདྷͷ8FCϖʔδͰભҠ࣌ʹϖʔδશମ͕ॻ͖ΘΔ͕ɺ41"Ͱ+4
Λ༻͍ͯϖʔδͷ)5.-ͷҰ෦Λࠩ͠ସ͑ͯίϯςϯπΛΓସ͍͑ͯ Δɻ͜ΕʹΑΓɺϒϥβͷڍಈʹറΒΕͳ͍6*ͷ࣮ݱɺύϑΥʔϚϯ εͷ্͕Մೳ Single Page Application Ծ%0.ʹΑΓ࣮ݱ
w Ծ%0.ɺϒϥβ͕͍࣋ͬͯͨ%0.πϦʔΛɺ+BWB4DSJQUͷΦϒ δΣΫτͱͯ͠දݱ w ͦͯ͠ɺϝϞϦ্ͷԾ%0.πϦʔΛ༻͍ͯࠩݕΛߦ͍ɺඞཁ࠷ ݶͷࠩͷΈΛϦΞϧ%0.ʹө͢ΔͨΊɺҰൠతʹύϑΥʔϚϯε͕ ্͢ΔͱݴΘΕͯΔ Ծ(Virtual)DOM https://employment.en-japan.com/engineerhub/entry/2020/02/18/103000#%E3%81%9D%E3%82%82%E3%81%9D%E3%82%82DOMDocument-Object-Model%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%8B
Ծ%0.πϦʔΛछྨ༻ҙ มߋલޙͷπϦʔछྨ ԿΒ͔ͷΞΫγϣϯͰTUBUF͕ॻ͖ΘΔ Ծ%0.Λ࠶ߏங͢Δ มߋલޙͷԾ%0.πϦʔΛ༻͍ͯࠩݕ͢Δ
͕ࠩ͋ͬͨՕॴ͚ͩϦΞϧ%0.ʹө͢Δ ԾDOMͷಈ͖ https://employment.en-japan.com/engineerhub/entry/2020/02/18/103000#%E3%81%9D%E3%82%82%E3%81%9D%E3%82%82DOMDocument-Object-Model%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%8B
·ͱΊ
w 5ZQF4DSJQU+BWB4DSJQUͷεʔύʔηοτͰܕͷఆ͕ٛՄೳ w 3FBDU7VF41"Λ࣮ݱ͢ΔͨΊͷ+4ͷϑϨʔϜϫʔΫɾϥΠϒϥϦ ·ͱΊ
࠷ۙͷχϡʔε ࣗͷ؍ଌͰ͖ͨൣғͰ৽͠ΊͷχϡʔεΛհ͠·͢
w ʹW͕ϦϦʔε w /PEFKTͷ࡞ऀ3ZBO%BIMࢯʹΑͬͯ࡞Β Εͨ৽͍͠ηΩϡΞͳ+454ͷϥϯλΠϜ w ࡞ऀ͕ࣗ/PEFKTͷ༷Λޙչͯ͠࡞Γ ͨ͠ͷ w ԕ͍ະདྷϦϓϨΠε͞ΕΔʁ
Deno https://deno.land/ https://qiita.com/so99ynoodles/items/c3ba2a528052827e3b3c ެࣜαΠτ 2JJUB
ɹͬͯΈΔ $ brew install deno )PNFCSFXͰΠϯετʔϧͰ͖·ͨ͠ NBD04 $ deno run
https://deno.land/std/examples/welcome.ts $ deno —-version deno 1.0.0 v8 8.4.300 typescript 3.9.2 αϯϓϧϓϩάϥϜΛ࣮ߦ Welcome to Deno https://deno.land/#installation ެࣜαΠτ
w 3FBDU&VSPQF d Ͱൃද w GBDFCPPLͷ৽͍͠ঢ়ଶཧϥΠϒϥϦ w 3FBDUͷެࣜͳঢ়ଶཧϥΠϒϥϦͰͳ͍ w "UPNͱ4FMFDUPSΛܦ༝ͯ͠3FBDUίϯϙʔ
ωϯτʹྲྀΕΔϑϩʔάϥϜΛ࡞ w ݱࡏ&YQFSJNFOUBM ࣮ݧ൛ Recoil ެࣜαΠτ https://recoiljs.org/ https://blog.uhy.ooo/entry/2020-05-16/recoil-first-impression/ ࢀߟ