SlideShare a Scribd company logo
1 of 17
Svelte触ってみた
ある日の投稿
なんでSvelte触ったんだっけ?
2019年からずっと満足度高い
概要っぽい話
Rich Harries(@Rich_Harris)
・First release 2016
・v2: The magical disappearing framework 2018
・v3: Cybernetically enhanced web apps 2019
・TypeScript Support 2020
・SvelteKit beta / Japanese Document 2021
・SvelteKit 1.0 2022
触ってみた感想
とにかく速い
なぜこんなに速いのか
No virtual DOM
総当たりで変更点を見つけるのではなく、
コードから変更されうるものを見つけて挙動を変えている
No virtual DOM
仮想DOMは速いという神話を
完全に終わりにしよう
(思想強め)
Library Size
内部で何をやってるか見てみる
Svelte compiler
・Javascript + HTMT + CSS
→ plain Javascript + scoped CSS
・No virtual DOM
Parse後の戻り値をとりあえず見る
No virtual DOM
https://svelte.dev/tutorial/basics
・コンパイル時にcreate_fragmentという要素が作成され、その中に
DOM情報が書き込まれる
・scriptタグ内の全ての変数について、リアクティブに変更される部
分とされない部分を判断してコンパイル時に分けるようにしている
・変わりうるのであれば、それを$$invalidateとctxで繋げられるよう
にしている
個人的に思ったこと
・HTMLライクに書けるので非エンジニアでもコーディングできそう
・画期的だけどまだまだ実績の少ない言語
・LP、リッチなWebサイト、小〜中規模くらいまでのサービス・プロ
ジェクトなら使いやすそう
・コミュニティあったり盛り上がってはいるので今後も追っていく

More Related Content

Similar to Svelte LT

5分で分るWebRTCコーデックウォーズ
5分で分るWebRTCコーデックウォーズ5分で分るWebRTCコーデックウォーズ
5分で分るWebRTCコーデックウォーズYusuke Naka
 
HTML5時代のwebクリエイターに必要なこと
HTML5時代のwebクリエイターに必要なことHTML5時代のwebクリエイターに必要なこと
HTML5時代のwebクリエイターに必要なことMasakazu Muraoka
 
パターンでわかる! .NET Coreの非同期処理
パターンでわかる! .NET Coreの非同期処理パターンでわかる! .NET Coreの非同期処理
パターンでわかる! .NET Coreの非同期処理Kouji Matsui
 
マイクロサービスにおける 非同期アーキテクチャ
マイクロサービスにおける非同期アーキテクチャマイクロサービスにおける非同期アーキテクチャ
マイクロサービスにおける 非同期アーキテクチャota42y
 
最新Webプロトコル傾向と対策
最新Webプロトコル傾向と対策最新Webプロトコル傾向と対策
最新Webプロトコル傾向と対策Kensaku Komatsu
 
Htmlコーディングの効率化 前編
Htmlコーディングの効率化 前編Htmlコーディングの効率化 前編
Htmlコーディングの効率化 前編Yasuhito Yabe
 
Tizen web app について調べたよ
Tizen web app について調べたよTizen web app について調べたよ
Tizen web app について調べたよNaruto TAKAHASHI
 
で、次は何がくるの? - 第2回 TIS Matsuri
で、次は何がくるの? - 第2回 TIS Matsuriで、次は何がくるの? - 第2回 TIS Matsuri
で、次は何がくるの? - 第2回 TIS MatsuriYoshitaka Kawashima
 
アカツキはどのようにAWSを活用しているか #jawsug
アカツキはどのようにAWSを活用しているか #jawsugアカツキはどのようにAWSを活用しているか #jawsug
アカツキはどのようにAWSを活用しているか #jawsugaktsk
 
WebRTCでリアル店舗を作ってみる
WebRTCでリアル店舗を作ってみるWebRTCでリアル店舗を作ってみる
WebRTCでリアル店舗を作ってみるJunichi Okamura
 
今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版VirtualTech Japan Inc./Begi.net Inc.
 
インタラクティブコンテンツにおけるHTML5とFlash
インタラクティブコンテンツにおけるHTML5とFlashインタラクティブコンテンツにおけるHTML5とFlash
インタラクティブコンテンツにおけるHTML5とFlashYasunobu Ikeda
 
はじめよう!Visual Studio 2010 で HTML5 プログラミング ~ Internet Explorer 9 のリリースに向けて~
はじめよう!Visual Studio 2010 で HTML5 プログラミング ~ Internet Explorer 9 のリリースに向けて~はじめよう!Visual Studio 2010 で HTML5 プログラミング ~ Internet Explorer 9 のリリースに向けて~
はじめよう!Visual Studio 2010 で HTML5 プログラミング ~ Internet Explorer 9 のリリースに向けて~満徳 関
 
DDD sample code explained in Java
DDD sample code explained in JavaDDD sample code explained in Java
DDD sample code explained in Java増田 亨
 
2015.04.19 WordBench 埼玉 Git & WordPress
2015.04.19 WordBench 埼玉 Git & WordPress2015.04.19 WordBench 埼玉 Git & WordPress
2015.04.19 WordBench 埼玉 Git & WordPressYutaro Miyazaki
 
SendGrid SDKを捨てた話
SendGrid SDKを捨てた話SendGrid SDKを捨てた話
SendGrid SDKを捨てた話Yuta Matsumura
 

Similar to Svelte LT (20)

5分で分るWebRTCコーデックウォーズ
5分で分るWebRTCコーデックウォーズ5分で分るWebRTCコーデックウォーズ
5分で分るWebRTCコーデックウォーズ
 
今さら聞けない人のためのGit超入門 2019/11/21
今さら聞けない人のためのGit超入門 2019/11/21今さら聞けない人のためのGit超入門 2019/11/21
今さら聞けない人のためのGit超入門 2019/11/21
 
HTML5時代のwebクリエイターに必要なこと
HTML5時代のwebクリエイターに必要なことHTML5時代のwebクリエイターに必要なこと
HTML5時代のwebクリエイターに必要なこと
 
パターンでわかる! .NET Coreの非同期処理
パターンでわかる! .NET Coreの非同期処理パターンでわかる! .NET Coreの非同期処理
パターンでわかる! .NET Coreの非同期処理
 
マイクロサービスにおける 非同期アーキテクチャ
マイクロサービスにおける非同期アーキテクチャマイクロサービスにおける非同期アーキテクチャ
マイクロサービスにおける 非同期アーキテクチャ
 
最新Webプロトコル傾向と対策
最新Webプロトコル傾向と対策最新Webプロトコル傾向と対策
最新Webプロトコル傾向と対策
 
今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門
 
Htmlコーディングの効率化 前編
Htmlコーディングの効率化 前編Htmlコーディングの効率化 前編
Htmlコーディングの効率化 前編
 
Tizen web app について調べたよ
Tizen web app について調べたよTizen web app について調べたよ
Tizen web app について調べたよ
 
で、次は何がくるの? - 第2回 TIS Matsuri
で、次は何がくるの? - 第2回 TIS Matsuriで、次は何がくるの? - 第2回 TIS Matsuri
で、次は何がくるの? - 第2回 TIS Matsuri
 
アカツキはどのようにAWSを活用しているか #jawsug
アカツキはどのようにAWSを活用しているか #jawsugアカツキはどのようにAWSを活用しているか #jawsug
アカツキはどのようにAWSを活用しているか #jawsug
 
JavaScript 研修
JavaScript 研修JavaScript 研修
JavaScript 研修
 
今さら聞けない人のためのGit超入門 2020/12/19
今さら聞けない人のためのGit超入門 2020/12/19今さら聞けない人のためのGit超入門 2020/12/19
今さら聞けない人のためのGit超入門 2020/12/19
 
WebRTCでリアル店舗を作ってみる
WebRTCでリアル店舗を作ってみるWebRTCでリアル店舗を作ってみる
WebRTCでリアル店舗を作ってみる
 
今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版
 
インタラクティブコンテンツにおけるHTML5とFlash
インタラクティブコンテンツにおけるHTML5とFlashインタラクティブコンテンツにおけるHTML5とFlash
インタラクティブコンテンツにおけるHTML5とFlash
 
はじめよう!Visual Studio 2010 で HTML5 プログラミング ~ Internet Explorer 9 のリリースに向けて~
はじめよう!Visual Studio 2010 で HTML5 プログラミング ~ Internet Explorer 9 のリリースに向けて~はじめよう!Visual Studio 2010 で HTML5 プログラミング ~ Internet Explorer 9 のリリースに向けて~
はじめよう!Visual Studio 2010 で HTML5 プログラミング ~ Internet Explorer 9 のリリースに向けて~
 
DDD sample code explained in Java
DDD sample code explained in JavaDDD sample code explained in Java
DDD sample code explained in Java
 
2015.04.19 WordBench 埼玉 Git & WordPress
2015.04.19 WordBench 埼玉 Git & WordPress2015.04.19 WordBench 埼玉 Git & WordPress
2015.04.19 WordBench 埼玉 Git & WordPress
 
SendGrid SDKを捨てた話
SendGrid SDKを捨てた話SendGrid SDKを捨てた話
SendGrid SDKを捨てた話
 

Svelte LT

Editor's Notes

  1. https://2022.stateofjs.com/ja-JP/libraries/front-end-frameworks/
  2. https://2022.stateofjs.com/ja-JP/libraries/front-end-frameworks/
  3. https://2022.stateofjs.com/ja-JP/libraries/front-end-frameworks/