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
LINEスキマニのフロントエンド開発にDenoを採用した理由
Search
LINEヤフーTech (LY Corporation Tech)
PRO
February 20, 2025
Technology
0
65
LINEスキマニのフロントエンド開発にDenoを採用した理由
「LINEヤフー × Deno Land Inc. Meetup」の登壇資料です。
LINEヤフーTech (LY Corporation Tech)
PRO
February 20, 2025
Tweet
Share
More Decks by LINEヤフーTech (LY Corporation Tech)
See All by LINEヤフーTech (LY Corporation Tech)
「コード品質向上のテクニック」連載継続の秘訣
lycorptech_jp
PRO
0
58
Tech Blogを書きやすい環境づくり
lycorptech_jp
PRO
1
240
Arakawa 101 Or How To Build a Data App by Python
lycorptech_jp
PRO
0
30
ドメイン駆動設計の実践により事業の成長スピードと保守性を両立するショッピングクーポン
lycorptech_jp
PRO
17
3.6k
LINEスキマニにおけるフロントエンド開発
lycorptech_jp
PRO
1
1.4k
Yahoo! ズバトクにおけるフロントエンド開発
lycorptech_jp
PRO
0
680
LINE Developersプロダクト(LIFF/LINE Login)におけるフロントエンド開発
lycorptech_jp
PRO
0
930
AI時代のデータセンターネットワーク
lycorptech_jp
PRO
1
540
連合学習を用いたスタンプの推薦
lycorptech_jp
PRO
2
81
Other Decks in Technology
See All in Technology
飲食店予約台帳を支えるインタラクティブ UI 設計と実装
siropaca
7
1.7k
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
180
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
2
2.8k
技術負債の「予兆検知」と「状況異変」のススメ / Technology Dept
i35_267
1
1.1k
Platform Engineeringは自由のめまい
nwiizo
4
2k
【Developers Summit 2025】プロダクトエンジニアから学ぶ、 ユーザーにより高い価値を届ける技術
niwatakeru
2
1.3k
あれは良かった、あれは苦労したB2B2C型SaaSの新規開発におけるCloud Spanner
hirohito1108
2
500
株式会社EventHub・エンジニア採用資料
eventhub
0
4.3k
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
500
白金鉱業Meetup Vol.17_あるデータサイエンティストのデータマネジメントとの向き合い方
brainpadpr
5
600
Data-centric AI入門第6章:Data-centric AIの実践例
x_ttyszk
1
400
Building Products in the LLM Era
ymatsuwitter
10
5.3k
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Building an army of robots
kneath
303
45k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.8k
Optimizing for Happiness
mojombo
376
70k
How to train your dragon (web standard)
notwaldorf
91
5.8k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Side Projects
sachag
452
42k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
410
Rails Girls Zürich Keynote
gr2m
94
13k
Transcript
-*/&Ϡϑʔʷ%FOP-BOE*OD.FFUVQ -*/&εΩϚχͷϑϩϯτΤϯυ։ൃʹ %FOPΛ࠾༻ͨ͠ཧ༝ -*/&Ϡϑʔגࣜձࣾ ߵ࢘
ߵ࢘ ,B[VTIJ,POPTV -*/&ϠϑʔגࣜձࣾιϑτΣΞΤϯδχΞ !LB[VTIJLPOPTV -*/&גࣜձࣾʢ࣌ʣʹ৽ଔೖࣾ ΤϯδχΞϦϯάϚωʔδϟʔɾςοΫϦʔυ ʮ-*/&εΩϚχʯϑϩϯτΤϯυνʔϜ
τϐοΫ ͳͥ%FOPΛ࠾༻͔ͨ͠ %FOPಋೖΛৼΓฦͬͯ %FOPΛͲͷΑ͏ʹ׆༻͍ͯ͠Δ͔
τϐοΫ ͳͥ%FOPΛ࠾༻͔ͨ͠ %FOPಋೖΛৼΓฦͬͯ %FOPΛͲͷΑ͏ʹ׆༻͍ͯ͠Δ͔
എܠrٕज़બఆͷߟ͑ํ ϛχϚϜͳબͷੵΈॏͶ ෳࡶͳཁ݅ͷରԠ ϩοΫΠϯͷճආ "MMJOPOFͳιϦϡʔγϣϯ ΤίγεςϜϩοΫΠϯ ٕज़తෛ࠴ͷϦεΫ αϓϥΠνΣʔϯ߈ܸ
ϓϩμΫτͷϦχϡʔΞϧͱ͍͏νϟϯε ϥϯλΠϜͲ͏͢Δ͔ʁ 1VSF41"
+BWB4DSJQUϥϯλΠϜͷͭͷإ ։ൃڥ 4FSWFS$MPVE #SPXTFS
/PEFKTΛʮਖ਼͘͠ʯڥߏங͢Δ࡞ۀɺർΕ·ͤΜ͔ʁ
ർΕΔϙΠϯτ w &4.PEVMF4ZOUBYͰॻ͍͍ͯΔ͚Ͳ$PNNPO+4ͱ࣮ͯ͠ߦ͞ΕΔίʔυ w ࣮ߦڥɾϥϯλΠϜʹ͋ΘͤͯઃఆඞཁͳUTDPO fi HKTPO w 5ZQF4DSJQUΛ࣮ߦ͢ΔͳΒඞཁͳUTOPEFUTY w
Ϧϯλʔͷઃఆ ΞϓϦέʔγϣϯ։ൃऀʹͱͬͯΤίεγςϜ͕ෳࡶ͗͢Δ
%FOPΛ࠾༻ͨ͠ཧ༝ w 8FCඪ४ʹ४ڌ͢Δ࢟ w ͻͱͭͻͱͭͷࣄ߲Λݕ౼͠ͳͯ͘GVUVSFQSPPGͳ͜ͱ͕Ͱ͖Δ w ʮͰ͖ͳ͍͜ͱʯ͕ଟ͍ͷ͍͍͜ͱ
τϐοΫ ͳͥ%FOPΛ࠾༻͔ͨ͠ %FOPಋೖΛৼΓฦͬͯ %FOPΛͲͷΑ͏ʹ׆༻͍ͯ͠Δ͔
%FOPΛͲͷΑ͏ʹ׆༻͍ͯ͠Δ͔ w /PEFKTޓͳQBDLBHFNBOBHFSͱ͍ͯͬͯ͠ΔΘ͚Ͱͳ͍ w QBDLBHFKTPOͷআ w ͯ͢ͷίʔυ%FOPͰ࣮ߦ w 7JUF 7JUFTUPO%FOP
5ZQF4DSJQU w AWJUFDPO fi HNUTA։ൃ࣌ʹ༻͢ΔεΫϦϓτྨʹ͍ͭͯAEFOP DIFDLAΛ༻ w ϑϩϯτΤϯυͷίʔυʹ͍ͭͯEFOP্ͰAUTDAΛ࣮ߦ w ϑϩϯτΤϯυ࣮ͱςετͦΕͧΕͷͨΊʹUTDPO
fi HKTPOΛϝϯςφϯε
'PSNBUUFS-JOUFS w 'PSNBUUFS1SFUUJFSΛ༻ w -JOUFSTSDʹ͍ͭͯ&4-JOU ͦΕҎ֎EFOP@MJOU
τϐοΫ ͳͥ%FOPΛ࠾༻͔ͨ͠ %FOPಋೖΛৼΓฦͬͯ %FOPΛͲͷΑ͏ʹ׆༻͍ͯ͠Δ͔
'SPOUFOE։ൃͷπʔϧ܈Λಈ͔͢ڥͱͯ͠ w ϑϩϯτΤϯυ։ൃڥͷηοτΞοϓ͕γϯϓϧʹͳͬͨ w %FOPͰಈ࡞͢Δ5ZQF4DSJQUϑΝΠϧʹ͍ͭͯઃఆͷཧΛ%FOPʹͤͨ w ։ൃڥͰ࣮ߦ͞ΕΔίʔυͷϥϯλΠϜͱͯ͠ͱͯັྗత
ϒϥβͰಈ͔͢ίʔυͷ։ൃڥͱͯ͠ w EFOP@GNUͩͱDTTUFNQMBUFMJUFSBMʹରԠͰ͖ͣ w EFOP@MJOUϓϥάΠϯγεςϜ͕ະख़ w EFOPDIFDLEFOPͰಈ࡞͢Δίʔυ͕લఏ w ࠓޙͷEFOP@MJOUͷಈ͖ʹظ
ґଘύοέʔδͷཧ w QBDLBHFKTPOΛ٫Ͱ͖ͨ w OPEF@NPEVMFTϒϥβͰ࣮ߦ͞ΕΔίʔυͷϑΝΠϧஔ͖ʹͳͬͨͷ Ͱɺೝίετ͕Լͨ͠
{ "dependencies": { "express": "4.19.2", "react": "18.3.1", "react-dom": "18.3.1" }
} &YQSFTTͱҰॹʹͳΒͿ3FBDUͷҙຯʁ
import { defineConfig } from 'npm:vite'; import react from 'npm:@vitejs/plugin-react';
// @deno-types="npm:@types/
[email protected]
" import 'npm:
[email protected]
'; // @deno-types="npm:@types/
[email protected]
" import 'npm:
[email protected]
'; // https://vitejs.dev/config/ export default defineConfig({ plugins: [react()], }); 'SPOUFOEͷґଘWJUFDPO fi HNUTͷ෭࡞༻ʹͳͬͨ
-PDLϑΝΠϧͷ w ಛఆͷύοέʔδ͚ͩΞοϓάϨʔυͨ͠MPDLϑΝΠϧΛ࡞Εͳ͍ w AOQNJGPP!MBUFTUA w %FOPࣾͱͷϛʔςΟϯάͰɺෳͷMPDLϑΝΠϧ͕࡞ΔΞΠσΞ͕ग़ͨ w -PDLϑΝΠϧΛׂ͢Δ͜ͱͰ1SFUUJFS &4-JOUৗʹ࠷৽൛Λ༻
w QBDLBHFKTPOͱ͍͏֓೦͕ͳ͍͜ͱʹΑΔ෭࣍తͳϝϦοτ
·ͱΊ w ͜Ε·ͰϥϯλΠϜબఆαʔόͷ͕த৺ w +BWB4DSJQUϥϯλΠϜʹෳͷإ͕͋Δ w %FOPͰ'SPOUFOE։ൃΛγϯϓϧʹ w 'SPOUFOEͷπʔϧ܈Λಈ͔͢ڥͱͯ͠ʜ✅ ϒϥβͰ࣮ߦ͞ΕΔίʔυͷ։ൃڥͱͯ͠ʜ📋
5IBOLZPV