React Native geliştiricileri için yıllardır süregelen "performans mı, geliştirme hızı mı?" ikilemi, Expo'nun son güncellemeleriyle geçerliliğini yitiriyor. Expo Router v7 ve yeni Expo UI kütüphanesi, uygulamaların hem iOS hem de Android'de Native gibi hissettirmesini sağlayan devrim niteliğinde özellikler sunuyor. Özellikle iOS 26 ile hayatımıza giren Liquid Glass estetiği ve Native Tabs, mobil tasarımdaki yeni standartları belirliyor.
Expo Router v7: Gerçek Native Sekmelere Geçiş
Bugüne kadar React Native uygulamalarındaki tab yapıları çoğunlukla JavaScript tabanlıydı. Bu durum, her ne kadar esneklik sağlasa da, platformun kendi sunduğu akıcı geçişleri ve sistem davranışlarını tam olarak yansıtmakta yetersiz kalabiliyordu. Expo Router v7 ile tanıtılan Native Tabs, bu durumu kökten değiştiriyor.
-
Platforma Özgü Davranışlar: Yeni Native Tabs yapısı, iOS ve Android'in doğrudan Tab yapısını kullanır. Bu sayede, örneğin Android'de bir sekmeye uzun basıldığında çıkan ipucu baloncukları veya iOS'te sekme değiştirirken yaşanan o karakteristik yaylanma efekti, ekstra bir kod yazmaya gerek kalmadan varsayılan olarak gelir.
-
Liquid Glass Estetiği: iOS 26 ve üzeri cihazlarda, tab bar artık basit bir blur efekti değil, arkaplanla dinamik olarak etkileşime giren, ışığı ve rengi kıran Liquid Glass materyaline dönüşüyor. Bu özellik, uygulamanızın modern iOS tasarım diline tam uyum sağlamasına olanak tanıyor.
Expo UI: SwiftUI ve Jetpack Compose Gücü React Native'de
Expo Router v7 navigasyon tarafını hallederken, Expo UI kütüphanesi de arayüz bileşenlerinde bir devrim yaratıyor. "Native hissi"ni yakalamak için artık React Native'in standart <View> bileşeni yerine, iOS için SwiftUI, Android için ise Jetpack Compose yapı taşlarını doğrudan kullanabiliyoruz.
Bu entegrasyonun en çarpıcı örneği, "Liquid Glass" efektini uygulamanın geneline yaymakta görülüyor:
-
Hibrit Bileşen Mimarisi: Expo UI, React Native projelerinde
.ios.tsxve.android.tsxuzantılı dosyalar kullanarak platforma özel modern arayüzler yazmanıza olanak tanıyor. Örneğin, iOS için hazırladığınız bir bileşende doğrudan SwiftUI'ın glassEffect değiştiricisini (modifier) kullanabilirken, Android tarafında Jetpack Compose ile Material Design standartlarını koruyabilirsiniz. -
Host Kavramı: SwiftUI bileşenlerini React Native içinde render etmek için yeni bir
<Host>konteyneri tanıtıldı. Bu yapı, SwiftUI'ın layout sistemini (HStack, VStack gibi) React Native'in Flexbox yapısıyla uyumlu hale getiriyor. -
Aşamalı Geçiş (Progressive Adoption): Liquid Glass gibi özellikler sadece en yeni cihazlarda (iOS 26+) desteklense de, Expo'nun sunduğu expo-glass-effect modülü sayesinde cihazın bu özelliği destekleyip desteklemediği çalıştırılırken kontrol edilebiliyor. Bu sayede, eski cihazlarda standart bir görünüm sunulurken, yeni cihazlarda fütüristik Liquid Glass componentler devreye giriyor.
Sonuç: Geleceğe Hazır Uygulamalar
Expo Router v7 ve Expo UI, React Native'i sadece bir hibrit geliştirme aracı olmaktan çıkarıp, her iki platformun da en yeni yeteneklerini kullanabilen süper-güçlü bir frameworke dönüştürüyor. Geliştiriciler için mesaj net: Artık yerel özellikleri taklit etmek zorunda değilsiniz, onları doğrudan kullanabilirsiniz.
Bu teknolojiler şu an deneysel statüde olsa da, sundukları vizyon mobil geliştirmenin geleceğinin hibrit ama özünde native olduğunu kanıtlıyor.
Sonraki yazımda görüşmek üzere. Hoşçakalın…
