Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
how frontend is constructed
Search
Yan | 近藤智哉
February 16, 2024
34
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
how frontend is constructed
Yan | 近藤智哉
February 16, 2024
More Decks by Yan | 近藤智哉
See All by Yan | 近藤智哉
「テンパーくん」がつくる、育て続けるヘルプページ
mtyk_15
0
34
If you're thinking, “The UI of apps made with AI is kind of iffy, isn't it?”
mtyk_15
0
21
why we should go with GraphQL
mtyk_15
0
120
Efficient Feature Implementation Using Type Merging
mtyk_15
0
1.2k
DataloaderのGraphQLを超えた活用を考えてみた
mtyk_15
1
180
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
830
Done Done
chrislema
186
16k
Visualization
eitanlees
152
17k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
My Coaching Mixtape
mlcsv
0
310
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.9k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
740
Test your architecture with Archunit
thirion
2
2.4k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
540
Making Projects Easy
brettharned
120
6.8k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
580
Facilitating Awesome Meetings
lara
57
7.1k
Transcript
Frontend を⼤局的に捉える Yan
本⽇の資料は Speaker Deck にて公開しています 撮影等ご⾃由に!
今⽇お話すること 1. ⾃⼰紹介 2. 悩み 3. 分割してみた 4. チームの問題を振り返ってみる
1. ⾃⼰紹介 近藤 智哉 (@mtyk_15) Kondo Motoya GraphQL / React
(バックエンド‧フロン トエンドを担当することが多いです) エン‧ジャパン株式会社 → 株式会社 RevComm → Kalonade 株式会社 → SHE 株式会社 🥰 旅⾏
悩んでいます
フロントエンドで⾃分 (組織) に合う 構成をどう⾒つけたらいいですか
None
トピックが多いよぅ... どう繋がっているか⾒えない...
⼿段が⽬的になってしまう... サーバーコンポーネント導⼊したるで ! E2E やったほうがいんじゃね ? マイクロフロントエンド導⼊しよ。 React Query 導⼊したいなぁぁ。
フロントエンドの「⽬的」を定義して ⼿段を⼤局的にとらえたい !
3. 分割してみた 体系化‧組織化 パフォーマンスの最適化 品質の担保 ユーザー体験‧アクセシビリティ 開発者体験の向上
3. 分割してみた
3. 分割してみた 体系化‧組織化 パフォーマンスの最適化 品質の担保 ユーザー体験‧アクセシビリティ 品質の担保 開発者体験の向上
3. 体系化‧組織化 概要: コードベースの構造を⼤きな意味で体系化する。 ⽬的: 開発者の認知負荷を下げたり、コードベースのメンテナンス性や再利⽤性の向上など。 Keywords: ‧関⼼の分離 (framework の選定,
Design system, headless UI, repo structure, folder structure, State management) ‧可読性 (formatting, naming, coding rules, commenting, review process, modulize) ‧メンテナンスのコスト削減 (documentation) など
3. パフォーマンスの最適化 概要: クライアント側のロード時間の⾼速化、各種リソースの最適化をする。 ⽬的: ユーザー体験の向上 Keywords: ‧クライアントが取得するリソースの最⼩化 (minification, lazy
loading, code splitting) ‧圧縮 (lossy compression, image format) ‧バンドル (webpack) ‧Caching (CDN, State management) など
3. 品質の担保 概要: アプリケーションのバグやエラー、操作上の問題に気付くことができるようにする。 ⽬的: 良いユーザー体験の担保や、アプリケーションの安定性‧信頼性の担保 Keywords: ‧ユニットテスト (Jest, Mocha)
‧ビジュアルテスト (Storybook, Chromatic) ‧E2E テスト (Cypress, Playwright)
3. ユーザー体験‧アクセシビリティ 概要: 直感的な UI の提供や、環境によらずアプリケーションを利⽤できるようにする。 ⽬的: どんな状況にいる⼈にとっても、シームレスなユーザー体験を提供する。 Keywords: ‧⼈間中⼼設計
/ UIUX ‧アクセシビリティガイドライン (WCAG) ‧クロスブラウザ対応 (polyfills, BrowserStack) ‧クロスデバイス対応
3. 開発者体験 概要: プロダクトを作る上での作業やコミュニケーションを最適化する ⽬的: 組織のケミストリーの向上や、プロダクト開発に必要な作業の最⼩化 Keywords: ‧作業⽤ツール (Chrome extension,
Alfred, Arc browser …) ‧チーム間のコラボレーションツール (Chromatic, Figma dev mode) ‧AI の活⽤ (Copilot, CodeRabbit)
3. チームの問題を振り返ってみる 状況: これからプロダクトを作るスタートアップ。toC & B で開発者は少数精鋭。 ⾼速でプロダクトを作って市場に当てたい。 Pick Up
(1) 体系化‧組織化 ‧フォルダ構造の検討 ‧再利⽤性の⾼いコード (2) ユーザー体験‧アクセシビリティ ‧デザインシステム / Headless UI の導⼊ (3) 開発者体験の向上
3. チームの問題を振り返ってみる 状況: メイン事業からスピンアウトして新しい事業を始めた。コードベースは同じだったが専属の チームができてこれからガンガン開発していくフェーズ。 Pick Up (1) 品質の担保 ‧Autify
‧Praywright (3) 体系化‧組織化 ‧フォルダ構造の⾒直し ‧State 管理ライブラリの⾒直し
⽬的を意識して ⽇頃のインプットをしたい!