Istanbul Coders grubu için 16.11.2017 tarihinde verdiğim sunumun slatylarıdır.
Bu sunumda React Native ile geliştirme yaparken karşılaşılacak ana konseptlerin ve React Native ile geliştirme yaparken karşılaşılabilecek kütüphaneler anlatılmıştır ayrıca uygulama geliştirirken karşılaşılabilecek sorunlar için öneriler de yer almaktadır.
19. Özel / 3.Parti Komponentler
● UI komponent
● Yardımcı ( utility ) sınıflar/fonksiyonlar
● Sadece Javascript
● Javasript + Native
○ Native olanlar için linkleme yapmak gerekebiliyor
● NPM alt yapısından ekleniyor
● https://js.coach/react-native
20. Stil (Styling)
● CSS Benzeri yapı
○ CSS’in alt kümesi denebilir
● Flexbox
○ Web Flexbox’un alt kümesi
24. Test ( Jest Framework )
● Hazır şekilde geliyor
● Javascript sınıfları test edilebiliyor
● React komponentleri test edilebiliyor
● Real device testi yapılamıyor
○ Uygulamayı aç, butona bas testi yok
26. Kişisel Deneyimlerim - Önerilerim
● Starter projeler ile başlamak çok hızlandırıyor
● React kütüphanesi ve Redux iyi anlayınca işler kolaylaşıyor
● Redux ve Redux-Saga ikilisi favorim
● Performans için önce Android tarafını kontrol etmek faydalı
● Animasyon için native driver kullanın
● Navigasyon için native çözüm daha performanslı
○ React Native Navigation
● Performansı etkileyen ana etken native ve JS arasındaki iletişim
● Değişken cihaz boyutları için yapılabilecekler
○ Responsive şekilde font boyutlarını değiştirmek
○ Metni değiştirmek
● 3.parti kütüphane buglı ise ve bug çok küçük ise
○ Fork edip bugı fixleyerek kullanabilirsiniz
○ Fork edip fixlediğiniz kısım için pull request talep ederek kütüphaneye katkı sağlayabilirsiniz
● Loglama için loggly ya da benzeri bir alt yapı kullanmak çok faydalı oluyor
27. Kişisel Deneyimlerim - Önerilerim - 2
● Text, View, Input vb en sık kullanılan komponentleri için
○ ya NativeBase benzeri bir kütüphane ile kullanın
○ ya da Temel komponentleri kapsayan komponentler kullanın
■ stil değiştirmesi kolay oluyor
● react-native-config ile environment bazlı ayarlamalar yapabilirsiniz