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
いま中途半端なSwift 6対応をするより、Default ActorやApproachabl...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
yimajo
October 02, 2025
Programming
670
2
Share
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
https://sansan.connpass.com/event/362403/
yimajo
October 02, 2025
More Decks by yimajo
See All by yimajo
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
840
11年かかって やっとVibe Codingに 時代が追いつきましたね
yimajo
1
370
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
3
320
良いテストコードのために悪いテストコードを理解する - 不安定なテスト編: iOSアプリ開発ユニットテストの場合
yimajo
22
6.7k
TCAの Shared Stateって どういう仕組みになってんの?
yimajo
0
2.6k
Swift 5.9 からの Observation はiOS17 未満 からも使えて struct の変更検知もできるんすかね?
yimajo
2
1.1k
不安定なテストは200種類あんねん
yimajo
3
1.2k
TCA v0.19.0からのSwitchStore/CaseLetが良い
yimajo
0
2k
TCAでViewStoreにKeyPath DynamicMemberLookupが使われてる件
yimajo
0
1.3k
Other Decks in Programming
See All in Programming
エラー処理の温故知新 / history of error handling technic
ryotanakaya
7
1.7k
tRPCの概要と少しだけパフォーマンス
misoton665
2
240
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
160
WebAssembly を読み込むベストプラクティス 2026年春版 / Best Practices for Loading WebAssembly (Spring 2026)
petamoriken
4
860
Running Swift without an OS
kishikawakatsumi
0
860
Oxlintとeslint-plugin-react-hooks 明日から始められそう?
t6adev
0
300
Kingdom of the Machine
yui_knk
2
1.2k
🦞OpenClaw works with AWS
licux
1
300
(Re)make Regexp in Ruby: Democratizing internals for the JIT
makenowjust
3
880
Back to the roots of date
jinroq
0
530
「Linuxサーバー構築標準教科書」を読んでみた #ツナギメオフライン.7
akase244
0
1.4k
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
360
Featured
See All Featured
Code Review Best Practice
trishagee
74
20k
Producing Creativity
orderedlist
PRO
348
40k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
190
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
The agentic SEO stack - context over prompts
schlessera
0
770
GraphQLとの向き合い方2022年版
quramy
50
15k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Test your architecture with Archunit
thirion
1
2.2k
Speed Design
sergeychernyshev
33
1.6k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.6k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Transcript
גࣜձࣾΩϡϦΦγςΟιϑτΣΞ!ZJNBKP ͍·த్ͳSwift 6ରԠΛ͢ΔΑΓɺ Default ActorApproachable ConcurrencyΛ ༗ޮʹ͔ͯ͠ΒͰ͍͍Μ͡Όͳ͍ʁ J04ΞϓϦ։ൃΛΞυόΠε͢ΔࣄͰ͖·͢Αɻ 5XJUUFS%.͔ IUUQTDVSJPTJUZDPKQ
ͷ͍߹Θ͔ͤΒ࿈བྷ͍ͩ͘͞
ʮ4XJGUରԠྃ͠·ͨ͠ʁʯ ͱ͍͏Ξϯέʔτ͕͋Γ·ͨ͠Ͷ J04%$ͷΧϯϑΝϨϯεϒʔεͰ
ݱࡏͰͦͷ4XJGUରԠͷྃͬͯ ۩ମతʹԿΛҙຯͯ͠ΔΜͰ͠ΐ͏͔ʁ ͋ͷͰΞϯέʔτͯ͘͠Εͨํʹ ʮϞϠϞϠ͢ΔͶʙͦͷ࣭ɺͳͥͳΒʙʯ ͱͯ͠Γ্͕ͬͨ༰Λൃදࢿྉʹͯ͠Έ·ͨ͠ʂ
લఏͷ֬ೝ
օ͞·͢Ͱʹ4XJGUΛ͍ͬͯΔ w ݄ͷ9DPEFͷ࣌Ͱ4XJGUίϯύΠϥͰ͢ w ͷ9DPEFͷ࣌Ͱ4XJGUίϯύΠϥͰ͢ w ͨͱ͑4XJGUͷਆػೳ4&έπΧϯϚͱͬ͘ʹ͑·͢ w ͷ9DPEFͰ4XJGU͕͑·͢
օ͞·4XJGU-BOHVBHF.PEFWͩͱࢥ͏ w 4XJGU-BOHVBHF.PEF w WͱWΛΓସ͑ΒΕΔ w Wʹ͢Δͱ4XJGUϝδϟʔόʔδϣϯΞοϓͷഁյతมߋΛΖʹड͚Δ w ࢀߟ w
IUUQT[FOOEFWZJNBKPBSUJDMFTDGCCD
4XJGU 4XJGU 9DPEF 9DPEF 4XJGU-BOHVBHF.PEFW 4XJGU-BOHVBHF.PEFW ྫ͑4XJGU͔Βͷ4&έπΧϯϚػೳ ഁյతมߋʂ ޓੑॏࢹ ͑Δ
બ
ͭ·Γ ͍·4XJGUରԠʜͱ͍͏͚Ͳ ͍͍ͨͯօ͞·4XJGUίϯύΠϥΛ͍ͬͯΔͷͰɺ 4XJGU-BOHVBHF.PEFWରԠͷ͜ͱΛݴ͍ͬͯΔʁ
ͬͯ͜ͱͰ ࣌ʹΑͬͯ4XJGUʢ-BOHVBHF.PEFʣରԠ ඍົʹҧ͍ͬͯͯɺ࠷৽ͷ88%$ͰԿ͕͔͋ͬͨΛৼΓฦΓ·͢
w 88%$ 9DPEFd w %FGBVMU"DUPS*TPMBUJPOࢦఆͰ͖Δ͔ΒɺϗετλʔήοτͰ.BJO"DUPS ͱ͔໌ࣔ͠ͳ͍Ͱ͍͍Α w "QQSPBDIBCMF$PODVSSFODZͰ͓͢͢Ίͷ$PODVSSFODZؔ࿈ͷ 6QDPNJOH'FBUVSF'MBHΛ·ͱΊͯΓସ͑ΒΕΔΑ
w ৽نϓϩδΣΫτ࡞࣌ʹ͜ͷ"QQSPBDIBCMF$PODVSSFODZ༗ޮͳͷ Ͱ͜Ε·Ͱͷϑϥά༗ޮͰ࢝ΊΒΕΔΑ
%FGBVMU"DUPS*TPMBUJPOσϑΥϧτ.BJO"DUPSʹઃఆ͞ΕͯΔ
"QQSPBDIBCMF$PODVSSFODZ͕Өڹ͢Δ6QDPNJOH'FBUVSFͨͪ
%JTBCMF0VUXBSE"DUPS*TPMBUJPOJOGFSFODF Կ 4& ϓϩύςΟͷHMPCBM"DUPS͕ܕࣗମͷΞΫλʔΛਪͯ͠͠·͏ɺͷΛΊΔ ͑͛ͭͶʔ هࣄ IUUQT[FOOEFWZJNBKPBSUJDMFTCFFEG
(MPCBM"DUPS*TPMBUFE5ZQFT6TBCJMJUZ Կ 4& HMPCBM"DUPSͳܕͷΞΫλʔִΛ؇ͨ͠ɻ۩ମతʹ֨ೲϓϩύςΟͷ ಡΈऔΓͷ߹ɺ4FOEBCMFͰ͋ͬͨΓ݅ʹͯ·ΕBXBJU͕ෆཁͰऔΓग़ ͤΔ ศརʙ
*OUFS*TPMBUFE$POGPSNBODFT Կ A!.BJO"DUPSDMBTT.Z5ZQF!.BJO"DUPS1\^A͕Ͱ͖ΔΑ͏ʹͳͬͨ ެࣜ IUUQTEPDTTXJGUPSHDPNQJMFSEPDVNFOUBUJPOEJBHOPTUJDTJTPMBUFE DPOGPSNBODFT
*OUFS4FOEBCMFGPS.FUIPETBOE,FZ1BUI-JUFSBMT Կ 4& ,FZ1BUI4XJGUͷ্༷4FOEBCMFͱͳ͍ͬͯΔ͕ɺඞཁͳ࣌ͷΈ ,FZ1BUI4FOEBCMFͱͳΔΑ͏ʹ͢Δɻ ,FZ1BUIΛར༻͢Δࡍඇ4FOEBCMFͳΛΩϟϓνϟ͢Δ͜ͱͪΖ Μ͋Δɻ͠։ൃऀ͕4USJDU$PODVSSFODZରԠ͠Α͏ͱ4USJDU $PODVSSFODZͷϨϕϧΛ্͛Δͱɺඇ4FOEBCMFͳܕΛΩϟϓνϟ͍ͯ͠Δ ,FZ1BUIฒྻॲཧʹͬͯͳͯ͘ܯࠂ͞ΕΔͨΊ։ൃऀࠞཚ͔͠Ͷ ͳ͍
OPOJTPMBUFE OPOTFOEJOH #Z%FGBVMU Կ BTZODͳAOPOJTPMBUFE OPOTFOEJOH Aؔͷݺͼग़͠ݩͷ&YFDVUPSͰॲ ཧ͞ΕΔΑ͏ʹͳͬͨ ͜Εͪΐͬͱ͠ΐ͏͕ͳ͍෦͋Δ͕Α͘ͳͬͨʂ هࣄ
IUUQTRJJUBDPNZJNBKPJUFNTGGFFBDGBB ެࣜ IUUQTEPDTTXJGUPSHDPNQJMFSEPDVNFOUBUJPOEJBHOPTUJDT OPOJTPMBUFEOPOTFOEJOHCZEFGBVMU
ͳΜͱͳ͘ ݴ͍͍ͨ͜ͱҙຯΘ͔Γ·͢ʁ
ͳͥͦͷ6QDPNJOH'FBUVSF'MBH͕͋Δ͔ͱ͍͏ͱɺͦΕ͕ͳ ͍ͱ4USJDUͳ$PODVSSFODZରԠΛ͠Α͏ͱͯ͠ɺܯࠂফͤͳ͍ ͔ɺແཧͳมߋͱͳΔ͠ɺͦͷޙʹ6QDPNJOH'FBUVSF'MBHΛ ༗ޮʹ͢Δͱ༷มߋʹରԠ͢Δ͜ͱʹͳΔΜ͡Όͳ͍ʁ 88%$ 4USJDU$PODVSSFODZ$IFDLJOHΛ DPNQMFUFEʹ͢Δ͔ʔ ͍ɺ͜ΕରԠͰ͖Μͷ͔ʁ 88%$ 88%$
🍎4XJGU-BOHVBHF.PEFͰޓੑอͭΑʂ 🍎6QDPNJOH'FBUVSFΛ༗ޮԽ͚͍͍ͯ͠Αʂ 🍎4XJGU-BOHVBHF.PEFͰ·ͩWͰ͍͍͔Βʂ 🍎%FGBVMU"DUPSศར͔ͩΒʂେ.BJO"DUPSͰ͍͍͔Βʂ 🍎OPOJTPMBUFEͰ&YFDVUPS͕HMPCBM"DUPSʹͳΔͷ͙͔͑ͬͨͶ 6QDPNJOH'FBUVSF'MBH͔ͭͬͯͶ 🍎4USJDU$PODVSSFODZ$IFDLJOHͰ ͋Β͔͡Ίݫີʹίʔυॻ͖͑ͯʂ
ͦͦ 9DPEFͰ4XJGU-BOHVBHF.PEFΛWʹ͠ɺ 4QFFDI'SBNFXPSLͷ 4'4QFFDI3FDPHOJ[FSSFRVFTU"VUIPSJ[BUJPO\ʜ^ Λݺͼग़͢ͱΫϥογϡ͠·ͤΜ͔ʁ ։ൃऀ͕͍·4XJGUରԠΛؤுͬͨઌʹ͋Δͷʜ
ࠓযΜͳ͍͍͍ͯͬͯ͘͏͔ যΔ͘͞ΜͳΜ͡Όͳ͍Ͱ͠ΐ͏͔ʜ զʑϑϥάΛΦϯʹͭͭ͠ਖ਼֬ʹ༷ΛѲ͠ɺ ϢʔβʔͷͨΊʹঃʑʹ҆શͳ4XJGUͷ͍ํΛରԠ͢Ε͍͍ɻ 4USJDU$PODVSSFODZͷϨϕϧ্͚ͩ͛ͯରԠͤͣ ܯࠂΛදࣔ͢Δͷɺ ܯࠂͰຒΕͯϦΞϧλΠϜͳঢ়گѱԽʹؾ͕͚ͭͳ͘ͳΔΑʂ
IUUQTZPVUVCFVS:Q".V4H TJG@CFP2"'O$.%: 88%$4XJGUͷฒߦॲཧͷ׆༻ ࢀߟ