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
認知負荷を打開するFlutter的アプローチ
Search
CyberAgent
PRO
March 21, 2024
1
250
認知負荷を打開するFlutter的アプローチ
コードにおける認知負荷が高い状態について、その認知負荷を打開するFlutter的アプローチを紹介_
CyberAgent
PRO
March 21, 2024
Tweet
Share
More Decks by CyberAgent
See All by CyberAgent
The Composable Architecture (TCA) を用いたAmebaのリアーキテクチャ
cyberagentdevelopers
PRO
0
6
SwiftUI導入から1年、SwiftUI導入とVueFluxライクな状態管理
cyberagentdevelopers
PRO
0
3
大規模プロジェクトにおける段階的な技術刷新
cyberagentdevelopers
PRO
0
8
SwiftUI移行のためのインプレッショントラッキング基板の構築
cyberagentdevelopers
PRO
0
6
Unity6世代のアップデートをサラッとまとめ
cyberagentdevelopers
PRO
0
310
Unity6の新機能 STPについての話
cyberagentdevelopers
PRO
0
170
Unity 6 シェーダーWarmupガイド
cyberagentdevelopers
PRO
0
200
Unity6 の Android周辺の アップデートについて
cyberagentdevelopers
PRO
1
210
ジャンプTOONにおけるサイトマップの自動生成手法について
cyberagentdevelopers
PRO
0
63
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Practical Orchestrator
shlominoach
186
10k
Automating Front-end Workflow
addyosmani
1368
200k
It's Worth the Effort
3n
184
28k
A Philosophy of Restraint
colly
203
16k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Unsuck your backbone
ammeep
669
57k
Building Adaptive Systems
keathley
40
2.4k
Raft: Consensus for Rubyists
vanstee
137
6.8k
A better future with KSS
kneath
238
17k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Transcript
認知負荷を打開する Flutter的アプローチ
自己紹介 新垣 清奈 株式会社サイバーエージェント 23年度入社 株式会社WinTicket anies1212 #人生初登壇 #新卒1年目 #緊張しい
#汗っかき #登壇楽しむ #沖縄出身
温かい目で見守っていただけると 嬉しいです!🙏 自己紹介
None
WINTICKETの紹介 競輪とオートレースのネット投票サービス
今回お話しする内容 • WINTICKETの過去と今 • 認知負荷について • WINTICKETの今後と課題 • コードにおける認知負荷へのアプローチ •
まとめ
WINTICKETの過去と今
WINTICKETの過去と今 2022年度 1. メンバーの増加 2023年度
WINTICKETの過去と今 2. 数多くの機能開発
WINTICKETの過去と今 2. 数多くの機能開発
WINTICKETの過去と今 2. 数多くの機能開発 1年で437PRをマージ
WINTICKETの過去と今 3. コード規約の増加
WINTICKETの過去と今 認知負荷の増加
認知負荷について
認知負荷について そもそも 認知負荷とは??
認知負荷について 次の図はどっちの方が 理解しやすい?
認知負荷について
認知負荷について
認知負荷について 文字と図が離れた場所に 配置されていない画像の 方が認知負荷が低い 注意分断効果
認知負荷について 情報を処理し、理解する際にかかる 精神的なエネルギー量のこと 認知負荷とは https://www.shokasonjuku.com/ux-psychology/cognitive-load#:~:text=%E8%AA%8D%E7%9F%A5%E8%B2%A0%E8%8D%B7%E3%81%A8%E3%81%AF%E3%80%81%E3%83%A6%E3%83%BC%E3%8 2%B6%E3%83%BC,%E3%81%99%E3%81%8E%E3%82%8B%E3%81%A8%E8%A8%80%E3%82%8F%E3%82%8C%E3%81%BE%E3%81%99%E3%80%82
認知負荷について 情報を処理し、理解する際にかかる 精神的なエネルギー量のこと 認知負荷とは https://www.shokasonjuku.com/ux-psychology/cognitive-load#:~:text=%E8%AA%8D%E7%9F%A5%E8%B2%A0%E8%8D%B7%E3%81%A8%E3%81%AF%E3%80%81%E3%83%A6%E3%83%BC%E3%8 2%B6%E3%83%BC,%E3%81%99%E3%81%8E%E3%82%8B%E3%81%A8%E8%A8%80%E3%82%8F%E3%82%8C%E3%81%BE%E3%81%99%E3%80%82
認知負荷について 技術 認知負荷における情報とは 過去のインシデント コーディングルール ドメイン知識 仕様
WINTICKETの今後と課題
WINTICKETの今後と課題 事業も組織も もっとスケールしていきたい!
WINTICKETの今後と課題 意思決定の遅延 管理の困難 チームの一体感の欠如 責任の所在 認知負荷 育成 課題
WINTICKETの今後と課題 意思決定の遅延 管理の困難 チームの一体感の欠如 責任の所在 認知負荷 育成 課題
WINTICKETの今後と課題 認知負荷 ツール コード 機能開発ライン増加 新規ドメイン ノイズや中断
WINTICKETの今後と課題 認知負荷 ツール コード 機能開発ライン増加 新規ドメイン ノイズや中断
WINTICKETの今後と課題 コードにおける認知負荷が高い状態 考慮コスト ◦ 自分の知らない仕様や背景がたくさんあるため 判断コスト ◦ 多様な表現により、適切な判断に悩むため ※この他にもコストが存在すると思うが、代表してこの2つを取り上げている
WINTICKETの今後と課題 コードにおける認知負荷が高い状態 考慮コスト ◦ 自分の知らない仕様や背景がたくさんあるため 判断コスト ◦ 多様な表現により、適切な判断に悩むため ※この他にもコストが存在すると思うが、代表してこの2つを取り上げている これらのコストは人数・機能の増加に比例する
コードにおける認知負荷への アプローチ
コードにおける認知負荷へのアプローチ - Danger - build_runner - CustomLint - CodeMod -
DartCodeMetrics - ドキュメント(Design Doc, コーディング規約) - コードコメント - etc.. さまざまなアプローチ
コードにおける認知負荷へのアプローチ それぞれの特性を理解して、 どのアプローチが望ましいかを考える!!
コードにおける認知負荷へのアプローチ - Danger - build_runner - CustomLint - CodeMod -
DartCodeMetrics - ドキュメント(Design Doc, コーディング規約) - コードコメント - etc.. さまざまなアプローチ
コードにおける認知負荷へのアプローチ Danger Pull Requestを提出する際にチェックすべき項目をルール化し、指摘を自動化するツール
コードにおける認知負荷へのアプローチ Danger
コードにおける認知負荷へのアプローチ Danger
コードにおける認知負荷へのアプローチ Danger 考慮コストの削減 チェックすべき項目をルール化し、指摘を自動化 自分の知らない仕様や背景を削減
コードにおける認知負荷へのアプローチ build_runner Dartコードを元に、プログラムの一部または全体を自動的に生成
コードにおける認知負荷へのアプローチ build_runner
コードにおける認知負荷へのアプローチ build_runner
コードにおける認知負荷へのアプローチ build_runner 表現の抑制が可能
コードにおける認知負荷へのアプローチ build_runner 自動生成後
コードにおける認知負荷へのアプローチ build_runner 判断コストの削減 Dartコードを元に、プログラムの一部または全体を自動的に生成 多様な表現の抑制
コードにおける認知負荷へのアプローチ CustomLint Dartプロジェクトの保守性を向上させるために、パッケージ作者や開発者が独自の Lintルールを簡単に作成 できるツール
コードにおける認知負荷へのアプローチ CustomLint
コードにおける認知負荷へのアプローチ CustomLint
コードにおける認知負荷へのアプローチ CustomLint 判断コストの削減 独自のLintルールを作成 多様な表現の抑制
コードにおける認知負荷へのアプローチ CustomLint
コードにおける認知負荷へのアプローチ CustomLint
コードにおける認知負荷へのアプローチ CustomLint
コードにおける認知負荷へのアプローチ CustomLint 考慮コストの削減 独自のLintルールを作成 自分の知らない仕様や背景を削減
コードにおける認知負荷へのアプローチ さまざまなアプローチ アプローチ 効果が期待できるコスト 補足 Danger 考慮コスト DartDangerもあります build_runner 判断コスト
主にボイラープレートに機能 する CustomLint 考慮コスト 判断コスト IDE上で解析可能 ※ どのアプローチも使い方によっては、判断コスト、考慮コストを下げることが可能ですが、 大きい効果が期待できそうなコストを元に考えています
アプローチ 効果が期待できるコスト 補足 Danger 考慮コスト DartDangerもあります build_runner 判断コスト 主にボイラープレートに機能 する
CustomLint 考慮コスト 判断コスト IDE上で解析可能 コードにおける認知負荷へのアプローチ さまざまなアプローチ ※ どのアプローチも使い方によっては、判断コスト、考慮コストを下げることが可能ですが、 大きい効果が期待できそうなコストを元に考えています
コードにおける認知負荷へのアプローチ CustomLintが良さそう? 🤔
コードにおける認知負荷へのアプローチ とはいえ! なんでもかんでもCustomLintを 書けば良いってわけじゃない!!🔥
None
None
None
None
None
コードにおける認知負荷へのアプローチ コードにおける認知負荷を減少
まとめ
認知負荷について 情報を処理し、理解する際にかかる 精神的なエネルギー量のこと 認知負荷とは https://www.shokasonjuku.com/ux-psychology/cognitive-load#:~:text=%E8%AA%8D%E7%9F%A5%E8%B2%A0%E8%8D%B7%E3%81%A8%E3%81%AF%E3%80%81%E3%83%A6%E3%83%BC%E3%8 2%B6%E3%83%BC,%E3%81%99%E3%81%8E%E3%82%8B%E3%81%A8%E8%A8%80%E3%82%8F%E3%82%8C%E3%81%BE%E3%81%99%E3%80%82
WINTICKETの今後と課題 コードにおける認知負荷が高い状態 考慮コスト ◦ 自分の知らない仕様や背景がたくさんあるため 判断コスト ◦ 多様な表現により、適切な判断に悩むため ※この他にもコストが存在すると思うが、代表してこの2つを取り上げている
コードにおける認知負荷へのアプローチ さまざまなアプローチ アプローチ 効果が期待できるコスト 補足 Danger 考慮コスト DartDangerもあります build_runner 判断コスト
主にボイラープレートに機能 する CustomLint 考慮コスト 判断コスト IDE上で解析可能 ※ どのアプローチも使い方によっては、判断コスト、考慮コストを下げることが可能ですが、 大きい効果が期待できそうなコストを元に考えています
None
認知負荷におけるコード的アプローチ コードにおける認知負荷を減少
認知負荷におけるコード的アプローチ Fin.