HealthKit entegrasyon örüntüleri: 3 app’ten pratik notlar
ByteBreak, Dentii, Snoozio üçünde de HealthKit kullandım. Authorization, background delivery, veri yorumlama konularında öğrendiklerim.
Saga pattern kullanmadan dağıtık transaction yönetmek
Saga pattern karmaşık, bazen overkill. Basit compensating action'larla dağıtık transaction benzeri davranış almanın yolları.
CloudKit ile offline-first uygulama nasıl kurulur?
Kullanıcı internet yokken de çalışan, geri bağlandığında otomatik sync olan bir app kurmak. CloudKit ile 2 projede öğrendiklerim.
REST API’de idempotency’yi atlarsanız fatura çifte gider
Ödeme, sipariş, mesaj gönderimi gibi kritik operasyonlarda idempotency şart. Nasıl kurgulayıp neyi atlamamak lazım.
SwiftUI NavigationStack: eski NavigationView’dan geçmenin 7 farkı
iOS 16'da gelen NavigationStack eski NavigationView'u değiştirdi. Migration sırasında karşılaşılan 7 önemli fark.
CQRS pattern: 3 gerçek senaryoda işe yaradığı, 5 senaryoda overengineering olduğu yerler
CQRS (Command Query Responsibility Segregation) her büyük mimari tartışmasında geçiyor. Gerçek projede nerede değer katıyor, nerede sadece karmaşıklık ekliyor?
MVVM vs The Composable Architecture (TCA): ne zaman hangisi?
TCA iOS topluluğunda sıkça önerilen bir mimari. 12 uygulamada MVVM kullandıktan sonra TCA denedim. Gerçekçi karşılaştırma.
Event-driven mimari: hype mı, gerçek kullanım mı?
Her büyük konferansta event-driven'dan bahsediliyor. Gerçek ürünlerde nerede işe yarıyor, nerede sadece karmaşıklık ekliyor?
Combine’dan async/await’e geçiş: 6 hafta sonrası kod karşılaştırması
Combine ile kurduğum bir iOS app'i async/await'e geçirdim. Neler kazandım, neler kaybettim, gerçek kod karşılaştırması.
Bounded context sınırını çizmenin 4 somut yolu
DDD'nin en kafa karıştırıcı kavramı bounded context. 4 farklı açıdan sınırı nasıl çizeceğin.
SwiftData mı, CoreData mı? iOS 17’den sonra seçim kriterleri
Apple SwiftData ile CoreData'yı değiştirmeye başladı. 2 projede denedim, bazı yerlerde hâlâ CoreData daha iyi. Pratik seçim kriterleri.
Domain-driven design’ın pratik faydası: ne zaman overkill, ne zaman kurtarıcı
DDD her proje için değil, ama doğru proje için tek çıkar yol. 19 yıllık danışmanlık tecrübesinden hangi durumda değer kattığı, hangi durumda…