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
20231220_FETechCafe_今年のフロントエンドの流行を語る
Search
hy094
December 20, 2023
Technology
0
230
20231220_FETechCafe_今年のフロントエンドの流行を語る
hy094
December 20, 2023
Tweet
Share
More Decks by hy094
See All by hy094
社内TypeScript勉強会を開催した話
hy094
0
560
TypeScript勉強会
hy094
0
1.8k
Other Decks in Technology
See All in Technology
incident_commander_demaecan__1_.pdf
demaecan
0
140
能登半島地震で見えた災害対応の課題と組織変革の重要性
ditccsugii
0
940
ユーザーの声とAI検証で進める、プロダクトディスカバリー
sansantech
PRO
1
140
オープンソースでどこまでできる?フォーマル検証チャレンジ
msyksphinz
0
140
カンファレンスに託児サポートがあるということ / Having Childcare Support at Conferences
nobu09
1
580
業務効率化をさらに加速させる、ノーコードツールとStep Functionsのハイブリッド化
smt7174
2
140
AgentCon Accra: Ctrl + Alt + Assist: AI Agents Edition
bethany
0
110
BI ツールはもういらない?Amazon RedShift & MCP Server で試みる新しいデータ分析アプローチ
cdataj
0
160
小学4年生夏休みの自由研究「ぼくと Copilot エージェント」
taichinakamura
0
720
OCI Network Firewall 概要
oracle4engineer
PRO
2
7.9k
プロポーザルのコツ ~ Kaigi on Rails 2025 初参加で3名の登壇を実現 ~
naro143
1
240
Digitization部 紹介資料
sansan33
PRO
1
5.5k
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1371
200k
We Have a Design System, Now What?
morganepeng
53
7.8k
BBQ
matthewcrist
89
9.8k
Optimizing for Happiness
mojombo
379
70k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Thoughts on Productivity
jonyablonski
70
4.9k
Typedesign – Prime Four
hannesfritz
42
2.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Mobile First: as difficult as doing things right
swwweet
224
10k
Designing for Performance
lara
610
69k
Music & Morning Musume
bryan
46
6.8k
Transcript
「今年のフロントエンドの流行を語る」 ラクスのフロントエンドエンジニアが選ぶ 2023年フロントエンド流行語大賞!
集計方法 - 各項目に対し、話題になった度を0-5ptで回答 - 0:知らない - 1:名前くらいは知っている - 2:内容は知っているが、話題になった印象はない -
3:話題になった技術とある程度感じている(使ってみたいと感じる) - 4:話題になった技術と強く感じている(気に入っている) - 5:State of My Frontend Tech 2023! 2
ノミネート候補一覧 - ノミネート一覧(アルファベット順) Astro, Bun, Deno, ECMAScript, Google Chrome(109-119), Internet
Explorer, MSW, Next.js, Node, Nuxt, Prettier, React, Recoil, Remix, Storybook, Svelte, TypeScript, Vite, Vue.js, Webアクセシビリティ 3
集計対象 - 基本FEエンジニアが対象。FE技術に興味のあるBEエンジニア の回答もあり - 順位付けはFEエンジニア回答の平均値を採用。 BEエンジニア も含めた全体スコアも参考値として記載 - ※あくまで社内調査のランキングです。一般的な認識と乖離し
ている箇所があるかもしれません。 4
10 5
Deno FE: 3.00pt 全体: 3.00pt 6
Denoについて DenoとはV8 JSエンジンとRustで構築されているJS/TS用のランタイ ム環境。TSを標準でサポートしている。(イメージキャラクターが可 愛い) 主なトピック - バージョン 1.30-1.38 -
Deno KV(Key-Value Store) - Deno.serve(APIサーバー) - HMR(Hot Module Replacement) 7
Deno KV / Deno.serve() / HMR 1.30~1.38で便利な機能が追加された - Deno KV
- Deno組み込み型のKey-Value Database - ローカル:SQLite、Deno Deploy:FoundationDB - watch - Deno.serve()(stabled) - v1.25から追加されたWebサーバー機能 - Node.jsと比較して性能が良い - HMR 8
9 9
Internet Explorer(IE) FE: 3.06pt 全体: 3.00pt 10
IEについて microsoft製のブラウザで、1995年のwindows95からwindowsに標 準搭載されていた。 IEに非対応のJavaScriptやCSSプロパティあり、開発者はIEでも表示 できるように対応を行っていた。 主なトピック - サポート終了(6/16) 11
IE対応 今までは以下のような対応を行っていたが、6/16のサポート終了 によって対応が不要になった - 変換する - Polyfill - Babel -
互換モードを指定する - metaタグ - HTTPヘッダー 12
8 13
Vue.js FE: 3.13pt 全体: 3.00pt 14
JavaScriptのフレームワーク。 日本語のドキュメントが豊富。 主なトピック - 2系のEOL(12/31) Vue.jsについて 15
バージョン2のEOLに伴い、さまざまなサービスで、3系に移行する /Reactなど他のライブラリに移行する/継続して使用するなどの対 応が必要になった。 - Vue 2からVue 3への移行 - 移行ガイドやVue CLIの利用
- Vue 2の延長サポート - HeroDevs社のNES (Never-Ending Support) for Vue 2など - Vue 2のまま継続 - セキュリティ・ブラウザ互換性などの問題の自己解決が必須 バージョン2のEOL対応 16
7 17
Bun FE: 3.19pt 全体: 3.15pt 18
Node.jsの互換、既存フレームワークの統合を図るJS/TS用のオー ルインワンツールキット。 主なトピック - v1リリース(9/8) Bunについて 19
Bunの優れている点 - JS、TSの開発、テスト、実行、バンドルを全てカバー - JavaScriptCore、Zigを利用。高速&メモリ使用量が小さい - Node.jsの多くのパッケージが動く Bunの主な機能 - bun
run…JS、TSファイルを実行 - bun install…パッケージインストール - bun bundle…単一のJSファイルにバンドル - bun test…テストファイルの実行 Bun v1.0 20
6 21
Webアクセシビリティ FE: 3.25pt 全体: 3.10pt 22
高齢者や障害者など心身の機能に制約のある人でも、年齢的・身 体的条件に関わらず、ウェブで提供されている情報にアクセスし 利用できること。 主なトピック - 努力義務→義務化(2024/4/1) - WCAG2.2(10/5) Webアクセシビリティについて 23
- WCAG(Web Content Accessibility Guidelines)とは - WEBコンテンツのアクセシビリティを向上させるためのガイドライン - 4つの原則(知覚可能、操作可能、理解可能、堅牢)に基づいて、12のガイドラインと86の達成 基準から構成されている
- 達成基準は、A(最低レベル)、AA(中間レベル)、AAA(最高レベル)の3つのレベルに分類され ている - WCAG 2.1が2018年6月なので、5年以上ぶりに更新された - 株式会社インフォ・クリエイツさんの資料が非常にわかりやすいです。 - https://accessibility.jp/images/pdf/WCAG2.2_20231007.pdf WCAG2.2 24
5 25
TypeScript FE: 3.31pt 全体: 3.25pt 26
JSを型付け可能にしたAltJSの一種。 主なトピック - 5.0-5.2 - Decorator - using宣言 TypeScriptについて 27
- Decorator - 実験的機能だったが5.0で利用可能になった - クラス宣言などと合わせて使用可能な宣言 - https://js.studio-kingdom.com/typescript/handbook/decorators - using宣言
- v5.2で導入 - let, constのようにusingで変数宣言ができる - try-finallyを使用せず、リソースの解放ができるようになる - ファイル操作やDB操作時に便利 - https://zenn.dev/ventus/articles/ts5_2-using-preview Decorator / using宣言 28
4 29
Next.js FE: 3.31pt 全体: 3.30pt 30
Vercel社が開発しているReactのフレームワーク。サーバーサイドレ ンダリング(SSR)、スタティックサイトジェネレーション(SSG)の両方 に対応している。 主なトピック - 13.2-14 - App Router -
ServerActions Next.jsについて 31
13.4でApp Routerが、14.0でServer Actionsがstabledになった。 - App Router - 既存のPages Routerの問題点の解消、及びServer Componentsのデ
フォルト化を行ったルーティング機能 - Server Actions - “use server”ディレクティブを付与した関数をformのactionに渡すこ とで、fetch等を実行することなくデータ更新が可能になる機能 - 特徴 - APIのエンドポイントが不要になる - プログレッシブエンハンスメントをサポート App Router / Server Actions 32
3 33
React FE: 3.38pt 全体: 3.05pt 34
Facebook発のクライアントサイド用JSライブラリ。 主なトピック - react.devが脱ベータ - 日本語版も Reactについて 35
react.devが脱ベータ - 旧サイト - https://ja.legacy.reactjs.org/ - 新サイト - https://ja.react.dev/ -
React 日本語ドキュメントが実はわりと ChatGPT で翻訳されている 件 react.dev 36
2位の発表の前に・・ 37
LT! 38
2 39
Vite FE: 3.56pt 全体: 3.35pt 40
ノーバンドルのビルドツール。開発時にバンドルを行わないことで 開発サーバーの起動を速めたツール。また、HMRも修正箇所のみ 適用することで高速になっている。 主なトピック - 4.1-5.0 - パフォーマンス改善 - ViteConf
2023 Viteについて 41
2023年10月5日に開催されたViteのカンファレンス。 - Rolldown - Rust製のバンドラー - 現在Viteは開発時はesbuild、プロダクションビルドはRollupを使用 - Rolldownの開発が完了→パフォーマンスの向上、開発とビルドの内容の 不一致が解消
- Viteを統合したフレームワークの説明 - Volar、Nuxt、Storybook、Angular、etc… ViteConf 2023 42
1 43
MSW(Mock Service Worker) FE: 3.81pt 全体: 3.25pt 44
Service Worker上で機能するAPIリクエストに対するモックのレスポ ンスを返すことが出来るライブラリ。これを使用することで、別途 モックサーバーを立てる必要がなくなる。 主なトピック - 1.0リリース - 2.0リリース MSWについて
45
- v1.0 - 開発・テスト・デバッグなど共通で利用可能な APIモック - 1/25にv1.0がリリースされた - Service Workerで起動するため、Json-Serverのように別途サーバーを立てる必要がな
い - また、テストやstorybookでも利用可能なため、メンテコストが軽減できる - v2.0 - 10/23にリリース - いくつか破壊的な変更もあり - streamingに対応 - 記述方法が直感的にわかりやすくなった - https://zenn.dev/keitakn/scraps/2ca70305a71847 MSW v1 / v2 46
まとめ:1-10位は以下の結果になりました。 1. MSW(Mock Service Worker) 2. Vite 3. React 4.
Next.js 5. TypeScript 6. Webアクセシビリティ 7. Bun 8. Vue.js 9. Internet Explorer(IE) 10. Deno 47
時間があまったので・・・ 48
11-20位 49
11-20位は以下のような結果になりました。 11. Prettier 12. Node 13. Astro 14. Chrome(109-119) 15.
ECMAScript 16. Storybook 17. Recoil 18. Remix 19. Nuxt 20. Svelte 50
コードフォーマッタ。 主なトピック - 3.0リリース - https://sosukesuzuki.dev/posts/prettier-3.0/ 11. Prettier(2.94pt) 51
V8 JSエンジンで構築されているJSのランタイム環境。 主なトピック - 20リリース - 14,16EOL - 14: 4/30
- 16: 9/11 12. Node(2.81pt) 52
React、Preact、Svelte、Vue、SolidJS等を複数組み合わせてコン ポーネントを作成することが出来る。 主なトピック - 2.0-4.0 - Hybrid Rendering - View
Transitions 13. Astro(2.69pt) 53
Google製のブラウザ。 主なトピック - MathML, View TransitionsAPI, CSS のネスト記法 - PopoverAPI
- Picture-in-Picture - @scope css rule 14. Chrome(109-119)(2.69pt) 54
JavaScriptの標準仕様。 主なトピック - 2023 - 配列の非破壊操作(toSorted、toReversed) - 配列の末尾操作 15. ECMAScript(2.69pt)
55
UIカタログ作成ツール。コンポーネントの挙動の確認やテストを行 うことが出来る。 主なトピック - 7.0-7.6 - viteをファーストクラスサポート - CSF3(Component Story
Format)がデフォルトに 16. Storybook(2.63pt) 56
facebook製の状態管理ライブラリ。 主なトピック - メンテナが解雇され、メンテナンスが止まってしまっている 17. Recoil(2.44pt) 57
React Routerの制作者が着想したSSR特化のReact用フレームワー ク。 主なトピック - バージョン2リリース - Flat Routes 18.
Remix(2.34pt) 58
Vueのフルスタックフレームワーク。 主なトピック - 3.3-3.8 - View Transitions 19. Nuxt(2.34pt) 59
クライアントサイド用フレームワーク。仮想DOMを用いずにコンパ イル時に状態が変化する場所の特定と該当箇所へのJSの生成を 行うことでパフォーマンスを上げている。 主なトピック - バージョン4リリース - パッケージサイズ減少 20. Svelte(2.25pt)
60