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
asa
November 10, 2022
Technology
400
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SwiftUI×TCAリアーキからみえた コーディング視点の開発者体験
2022.11.10 UB Tech vol.4
https://uzabase-tech.connpass.com/event/263883/
asa
November 10, 2022
More Decks by asa
See All by asa
iOSDC2021_LiveStreaming
asa08
1
530
Other Decks in Technology
See All in Technology
[しろおび夏祭り2026] チャットするAIから、作業するAIへ - 使われ方の変化と、その裏側で起きていること
kk0n
0
1.7k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
53k
名古屋の市バスGTFS-JPデータ×スガキヤ 最寄りバス停検索をAmazon ElastiCache Serverless for Valkeyで最適化する
usanchuu
1
500
FPGAが実現する遠方宇宙の高空間分解能天体撮影 -大型地上望遠鏡の視力を補正する「補償光学」とは?-
komei_mt
0
180
AI ネイティブな組織に Gemini Enterprise Agent Platform がなぜ必要なのか
asei
1
190
QAエンジニア起点で進める、SmartHRにおける信頼性向上について
kaomi_wombat
1
120
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
19k
FORENSIA: ローカルLLMフォレンジックハーネス
sumeshi
2
350
『三匹の子ぶた』から学ぶネットワークセキュリティの昔と今 / Network Security: Then and Now Through the Lens of The Three Little Pigs
nttcom
1
1.8k
え?フロントエンドエンジニアの ワイがインフラも!?
puku0x
1
430
AI駆動開発は個人技からチーム戦へ:組織でAIを使いこなすための実践設計
moongift
PRO
0
480
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.1k
Featured
See All Featured
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
Six Lessons from altMBA
skipperchong
29
4.4k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
440
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
340
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
990
A Modern Web Designer's Workflow
chriscoyier
698
190k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
460
Statistics for Hackers
jakevdp
799
230k
The Cult of Friendly URLs
andyhume
79
7k
WENDY [Excerpt]
tessaabrams
11
39k
Color Theory Basics | Prateek | Gurzu
gurzu
0
410
Bash Introduction
62gerente
615
220k
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 心もコードも健全に 健全なコードはエンジニアの心を明るくす パフォーマンスがあがり施策も高速でまわせる 会社もチームも個人も幸せに
ありがとうございました。