Section 11/131 menit
11. Kapan Tidak Digunakan
11. Kapan Tidak Digunakan
Jangan gunakan @Observable ketika:
- Target minimum iOS 16 ke bawah —
@Observabletidak tersedia, wajib pakaiObservableObject. Tidak ada workaround. - Project sudah heavily invested di Combine pipeline — jika seluruh data layer sudah menggunakan
AnyPublisher,PassthroughSubject, dll, refactor ke@Observablemembutuhkan perubahan besar tanpa manfaat langsung yang sebanding - Butuh operator Combine (
debounce,throttle,combineLatest,flatMap) untuk transformasi reactive yang kompleks —@Observabletidak memiliki ekuivalen ini. Pertimbangkan kombinasi@Observable+ Combine pipeline terpisah, atau AsyncSequence - Butuh fine-grained Combine subscription dengan backpressure management — AsyncStream lebih cocok, bukan
@Observable - Value type (struct) yang ingin di-observe —
@Observablehanya bekerja untukclass. Untuk struct, gunakan@Statelangsung di SwiftUI - Server-side Swift tanpa SwiftUI —
withObservationTrackingbisa dipakai, tapi overhead framework kurang sepadan untuk server use case. Pertimbangkan Observer pattern sederhana atau Combine (jika Linux-compatible Combine tersedia) - Synchronous notification yang tidak boleh melewati run loop —
@Observablemenjadwalkan notifikasi perubahan secara asynchronous melalui SwiftUI update cycle