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
野瀬田とSwift愛好会
Search
野瀬田 裕樹
August 29, 2026
Programming
39
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
野瀬田とSwift愛好会
野瀬田 裕樹
August 29, 2026
More Decks by 野瀬田 裕樹
See All by 野瀬田 裕樹
速習iPhone Duo対応
yuukiw00w
2
960
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
320
ネイティブiOSアプリだからできること
yuukiw00w
0
47
uhooiさん発ランダムタスクにチャレンジしよう!
yuukiw00w
1
83
ViewModelって200種類あんねん
yuukiw00w
0
62
Validate your App Intents adoption with AppIntentsTesting
yuukiw00w
0
58
App Intentsを実装しよう
yuukiw00w
0
60
iOS26時代の新規アプリ開発
yuukiw00w
0
280
Swift ConcurrencyでよりSwiftyに
yuukiw00w
0
410
Other Decks in Programming
See All in Programming
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
920
Findy - エンジニア向け会社紹介/Findy Company Deck
findyinc
6
400k
AWS CDKのカスタムリソースでContinuum(旧Security Agent)を実装した話 | Implementing Continuum (formerly Security Agent) via AWS CDK Custom Resource
akihisaikeda
2
140
残高管理から台帳サービスへの進化
artoy
0
170
Agents on Rails - Rails at Scale 2026
irinanazarova
0
340
Kubernetes祭り #2 OP/ED
bells17
0
100
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3.5k
phperだってパンチカードでコーディングしたい
o0h
PRO
0
220
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
370
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
450
contenteditable と日本語入力に向き合う
colorful12
0
150
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
710
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
4k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
320
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
840
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
350
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
300
Odyssey Design
rkendrick25
PRO
2
860
The Invisible Side of Design
smashingmag
301
52k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
570
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
260
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Transcript
野瀬田とSwift愛好会 合同会社DMM.com 野瀬田 裕樹(@ynoseda)
野瀬田 裕樹(@ynoseda) • 出身:京都 • ローム → Navitime // 2015年10月〜
iOSアプリエンジニア → Yahoo! Japan → DeNA → DMM.com ← 今ここ
愛好会参加履歴(一般参加) • 2023/12/20 vol.77が初回参加 • vol.77, 79, 81, 92の合計4回
愛好会参加履歴(談義枠) • 2024/03/07 vol.80が初談義 • vol.80, 96, 98 WWDC25セッション要約会, WWDC26セッション要約会
• 合計3+2回(5回)、今日で6回目
愛好会参加履歴(談義枠) • uhooiさん発ランダムタスクにチャレンジしよう! • AI前提で考えるiOSアプリのモダナイズ設計 • ViewModelって200種類あんねん • Evaluate your
app for Accessibility Nutrition Labels • Validate your App Intents adoption with AppIntentsTesting
いつも自分の考えを整理したりするきっかけとして 談義枠使わせていただいているので感謝です!!
タイトルと考えていたこと1 • uhooiさん発ランダムタスクにチャレンジしよう! • 良さそうな体験を実現したいときの実装上の難点を具体的なhowま で落とし込んで考える時間を取るの大事だよねという話
タイトルと考えていたこと2 • AI前提で考えるiOSアプリのモダナイズ設計 • AIさんがいればモダナイズも簡単だし、そもそもモダナイズ重要に なっていくし、やっていかなきゃだよねという話
タイトルと考えていたこと3 • ViewModelって200種類あんねん • ViewModel論争が定期的に上がってくるからちゃんと整理して把握 しておくといい感じだよねという話
タイトルと考えていたこと4 • Evaluate your app for Accessibility Nutrition Labels •
iOSアプリ作るのにアクセシビリティちゃんと考慮しないとか今後 はもうありえないって感じになってくるんだろうなという話
タイトルと考えていたこと5 • Validate your App Intents adoption with AppIntentsTesting •
AI時代でiOSアプリはみんなApp Intentsを導入する前提になってい くかもねという話(そうなるといいよねみたいな話)
AI時代 • みんなAIの話してるし、みんなAI使ってるし、AIが全部やってる • 最近自分も実装はほとんどAIがやっている
AIがやること・人がやること • AIは言語化された領域を推進 (電子空間で表現できる活動を広く担う) • 人は言語化されていない領域、電子空間の外側との接続を担当 • その境界では、非言語 → 言語、言語
→ 非言語の変換が必要 • 非言語 → 言語は問題設定であったり、良し悪しの判断軸の提示など • 言語 → 非言語はアウトプットを理解して内面化する作業など
人がやること • 実装上で人でもAIでも難しい所はどうしても存在する • 難しい所をちゃんと理解して問題を検知、改善できる必要がある
例えば Task { let image = try await fetchImage() //
~~ } • どのActorにisolationされている? • nonisolated by defaultは有効?Default Actor Isolationの設定は? • Taskを保持してcancelせず投げっぱなしでいい? • 競合状態(race condition)は発生しない? • Task内で発生したエラーは無視して握り潰していい? • UI側で.taskで作った方がいいのではないか? • 他のTaskがあった場合並行して処理されるけど大丈夫?
例えば Task { let image = try await fetchImage() //
~~ } • 詳細な実装仕様の詰めを怠ると エッジケースの考慮漏れや調査の難しい原因不明な不具合に繋がりやすい • 例示した非同期処理は順番や組み合わせによって意図しないわかりにく い不具合も混入しやすく、人でもAIでも判別が難しいことがある • DBへの保存など後から取り返しが効きにくいケースでも起こりうる
iOSアプリエンジニアとして • iOSアプリエンジニアとして Appleの推奨する設計、実装、体験を体得する • Swift 6らしい設計を体得すると、 AIの提示した実装を評価できる • 最新のHIGに沿った体験を理解すると、
デザイナーやAIが作ったUIを評価できる
iOSエンジニアとしてやること • • AIは既存コードを参照して実装パターンを再利用する • AIは良い設計も悪い設計も増幅する • 既存のコードベースを綺麗な状態に保つことが重要 一方で、良い設計とは何かは人が判断基準を提示する必要がある •
人が保有する非言語のスキルを言語化し、 AIが継続的に適用・評価するためのスキルとして昇華する
iOSエンジニアとしてやること • 判断基準の例 • UI実装では装飾・構造・処理を分割する • 導出可能な状態は保持しない • ユーザーの振る舞いに関係しない内部都合の分岐を増やさない (テスタビリティ向上か不正状態の排除に寄与する場合を除く)
• Actorのisolationは宣言側に付与し、呼び出し側では明示しない • Objective-C 由来の API を避ける DateFormatter, NSRegularExpressionよりFormatStyle, RegexBuilderを選ぶ
言語化を訓練しよう • 言語化/非言語化ができるようになるためには訓練が必要 • 他の人に説明しようとすると、 自分が曖昧に理解していた箇所が見える • Swift愛好会で登壇すると、 自分の関心を深掘りして言語化する訓練になる
まとめ • みんなでもっと知見を共有し合いましょう • 登壇は言語化の訓練になるのでおすすめです • Swift愛好会は言語化の訓練にとても良い場なので感謝