TurboModules
- React Native kursu
- İleri seviye
- Ders 71/83
- 5 dk
TurboModules ve yeni mimari öğrenirsin.
TurboModules
TurboModules, React Native'ın yeni mimarisinin parçasıdır. Klasik köprüyü (bridge) JSI (JavaScript Interface) ile değiştirir. Çağrılar daha hızlıdır çünkü köprü asenkron kuyruğu ortadan kalkar; JS ve native doğrudan iletişim kurar.
Bir TurboModule, C++ ile yazılır ve JS tarafına doğrudan bağlanır. Eski native modüller hala çalışır ama yeni modüller TurboModule olarak yazılır. Yeni mimari (New Architecture) etkinleştirildiğinde TurboModules varsayılan hale gelir. requireNativeComponent ve benzeri API'ler yerini JSI tabanlı çağrılara bırakır.
Yeni mimari farkı
Yeni mimari, klasik köprüyü JSI ile değiştirir. Köprüde her çağrı bir kuyruğa girer ve asenkron işlenir; bu gecikme yaratır. JSI'da ise JS, native nesnelere doğrudan işaretçi erişimi sağlar; çağrılar senkron ve hızlıdır.
Bu, animasyonların ve yüksek frekanslı olayların (ör. kaydırma) daha akıcı olmasını sağlar. Yeni mimari açıldığında TurboModules otomatik etkinleşir; kod değişikliği gerekmez. Eski native modüller uyumluluk modunda çalışmaya devam eder.
Uygulama TurboModule çağrısı
Boş dosyayı tamamla. TurboModuleRegistry'i react-native'den içe aktar (var say). const Battery = TurboModuleRegistry.getEnforcing('Battery') ile modülü al. Battery.getLevel() çağrısını export async function olarak sar.
Başlangıç kodu
// Battery TurboModule'ünü al ve getLevel çağrısını dışa aktarÖrnek çözüm
import { TurboModuleRegistry } from 'react-native';
const Battery = TurboModuleRegistry.getEnforcing('Battery');
export async function getLevel() {
return Battery.getLevel();
}Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 TurboModules parçalarını eşle
| Kavram | Anlamı |
|---|---|
TurboModules |
Yeni mimari |
JSI |
Doğrudan arayüz |
C++ |
Modül dili |
New Architecture |
Yeni yapı |
2 Yeni mimari arabirimi
TurboModules uses ____ for direct JS-native calls.
TurboModules uses JSI for direct JS-native calls.
Açıklama: JSI doğrudan JS-native iletişim sağlar.
3 Yeni mimari neyi ortadan kaldırır?
- Animasyonları
- Stilleri
- Klasik köprüyü Doğru cevap
- Bileşenleri
Açıklama: Yeni mimari klasik köprüyü JSI ile değiştirir.