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
SwiftUI×TCAリアーキからみえた コーディング視点の開発者体験
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
asa
November 10, 2022
Technology
0
380
SwiftUI×TCAリアーキからみえた コーディング視点の開発者体験
2022.11.10 UB Tech vol.4
https://uzabase-tech.connpass.com/event/263883/
asa
November 10, 2022
Tweet
Share
More Decks by asa
See All by asa
iOSDC2021_LiveStreaming
asa08
1
510
Other Decks in Technology
See All in Technology
Agent Skils
dip_tech
PRO
0
200
(技術的には)社内システムもOKなブラウザエージェントを作ってみた!
har1101
1
460
Claude Codeで実践するスペック駆動開発入門 / sdd-with-claude_code
yoshidashingo
2
3.1k
React 19時代のコンポーネント設計ベストプラクティス
uhyo
16
5.9k
vol11_ねこIoTLT_お遊びVibeCoding
1027kg
0
110
衛星画像即時マッピングサービスの実現に向けて
lehupa
1
280
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
57
47k
Generative UI を試そう!A2-UIでAIエージェントにダッシュボードを作らせてみた
kamoshika
1
240
AIで 浮いた時間で 何をする? 2026春 #devsumi
konifar
15
2.3k
猫でもわかるKiro CLI(セキュリティ編)
kentapapa
1
250
pool.ntp.orgに ⾃宅サーバーで 参加してみたら...
tanyorg
1
3k
#23 Turing × atmaCup 2nd 6th Place Solution + 取り組み方紹介
yumizu
0
150
Featured
See All Featured
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
230
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
450
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
440
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
My Coaching Mixtape
mlcsv
0
58
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
94
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
290
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Transcript
SwiftUI×TCAリアーキからみえた コーディング視点の開発者体験 2022.11.10 Maiko Morisaki
00 自己紹介 ©NewsPicks Inc. All Rights Reserved. Maiko Morisaki
iOS Engineer たまに Flutterを書く _asa08_ _asa08_ iOSDC 2019スタッフ 2020登壇(40分でわかるライブ配信)
前話し 目次 01 02 03 04 今は昔… リアーキで 受けた恩恵 心もコードも
健全に
©NewsPicks Inc. All Rights Reserved. 01 前話し
01 前話し コーディング体験ベースの話がしたい 以前はどのような状況だったか リアーキテクチャでのコーディングの体験はどうか SwiftUI
宣言的UIフレームワーク The Composable Architecture(TCA) Redux Likeなシステムアーキテクチャを提供するフレームワーク
©NewsPicks Inc. All Rights Reserved. 02 今は昔… ‐ UI
01 今は昔 ‐ UI コードベース GUI(Xib)ベース
01 今は昔 ‐ UI コードベース GUI(Xib)ベース 赤:Viewの階層構造 黄:レイアウトの設定
青:コンポーネント一覧
01 今は昔 ‐ UI コードベース GUI(Xib)ベース コードをみるとhtmlのような感じになっている 同時に同じxibをいじると勿論競合が発生するが、これを手で直さなけ ればいけない
01 今は昔 ‐ UI コードベース GUI(Xib)ベース コードをみるとhtmlのような感じになっている 同時に同じxibをいじると勿論競合が発生するが、これを手で直さなけ ればいけない
GitHub上でのコードレビューが難しい 同じ画面の同時編集ができない
01 今は昔 ‐ UI コードベース GUI(Xib)ベース コードをみるとhtmlのような感じになっている 同時に同じxibをいじると勿論競合が発生するが、これを手で直さなけ ればいけない
GitHub上でのコードレビューが難しい 同じ画面の同時編集ができない
01 今は昔 ‐ UI コードベース GUI(Xib)ベース コードをみるとhtmlのような感じになっている 同時に同じxibをいじると勿論競合が発生するが、これを手で直さなけ ればいけない
GitHub上でのコードレビューが難しい 同じ画面の同時編集ができない View階層やレイアウト設定の確認が大変
01 今は昔 ‐ UI デザインの印象以上に大変 チーム開発でボトルネックになることがある
01 今は昔 ‐ UI SwiftUI!
©NewsPicks Inc. All Rights Reserved. 02 今は昔… ‐ UnitTest
01 今は昔 ‐ UnitTest UnitTestがあると 既存の複雑なロジックの修正もある程度 の安心がある 何のテストを書くか 意味のあるテストを書くために何をテスト するか明確になっているといい
テストを書くには テストが書ける設計になっている必要が ある
01 今は昔 ‐ UnitTest UnitTestがあると 既存の複雑なロジックの修正もある程度 の安心がある 何のテストを書くか 意味のあるテストを書くために何をテスト するか明確になっているといい
テストを書くには テストが書ける設計になっている必要が ある
01 今は昔 ‐ UnitTest The Composable Architecture!
©NewsPicks Inc. All Rights Reserved. 03 リアーキで受けた恩恵
03 UI 03 リアーキで受けた恩恵 SwiftUI GtiHub上でのレビューが難しい Viewの階層やレイアウトの確認が大変
同じ画面の同時編集ができない 体験向上 体験向上 体験向上
03 UnitTest 03 リアーキで受けた恩恵 The Composable Architecture View
State Action Reducer Environment
03 UnitTest 03 リアーキで受けた恩恵 The Composable Architecture テストが書ける設計になっている
何のテストを書くか明確 体験向上 体験向上 View State Action Environment Reducer
©NewsPicks Inc. All Rights Reserved. 04 心もコードも健全に
04 心もコードも健全に 健全なコードはエンジニアの心を明るくす パフォーマンスがあがり施策も高速でまわせる 会社もチームも個人も幸せに
ありがとうございました。