React Native Uygulama Geliştirme
React Native ile 1 seneye yakın süredir sıkı bir şekilde ilgileniyorum ve bildiklerimi nacizane şekilde paylaşmak istiyorum , brkdgn.com web sitemdede react native dersleri yani react native konusunda paylaşımlar yapmaktayım ve soru sor alanından tüm sorularınızı yöneltebilirsiniz.
React native ile yapılabilecekler bir JS ile yapabilecekleriniz ile sınırlı yani hayalleriniz ile ancak burada tek önemli konu öğrenmeye ne kadar açıksınız yada araştırmayı ne kadar seviyorsunuz, eğer araştırmacı iseniz bu kütüphaneyi dolayısıyla mobil uygulama geliştirmeyi kolaylıkla öğrenebilirsiniz.
React Native ismindende anlaşılacağı üzere daha doğrusu facebook un iddasına göre Native uygulama geliştirme yapmanıza yarayan JS kütüphanesi. React native e alternatif İonic gibi bir çok kütüphane bulunuyor ancak RN dışında hiçbiri native olduğunu iddaa etmiyor dolayısıyla Android için Java , İOS için Swift bilme ihtiyacınızı ortadan kaldıran bir kütüphane olan RN size yeterli olacaktır.
React Native API erişimi
React native ile cihazın titreşim , camera gibi bir çok API sine erişim sağlayabiliriz bunlardan bazıları aşağıdaki gibi olacaktır ;
- Lokasyon Bilgisi
- Camera
- Ses Kayıdı
- Rehber
- Fotoğraflar – Galeri
- Takvim
- Hatırlatıcılar
- Titreşim
React Native sık kullanılan Nesneler
React Native ile uygulama tasarlarken en sık kullanılacak işlemler ve nesneler nelerdir dersek burada ortaya bir kaç nesne – işlev çıkacak bunlardan bir kaçı ;
- React Native URL POST – GET yani fetch()
- Navigation (Tab Navigator – Drawer Navigator – Stack Navigator)
- Lokal Hafıza (SQL – AsyncStorage)
- Barcode Scanner
- Camera
- Timer
- Push Notification
- Alert
- Toast
React Native Yaşam Döngüsü
Aslında bu başlık için bir makalem mevcut ve bu kısmı oradan inceleyerek okumanız daha mantıklı olacaktır çünkü başlı başına bir ders olabilecek bir konu bu yazıda sadece giriş mahiyetinde olduğu için kısaca değinerek geçmek istiyorum Yaşam döngüsü üç farklı method mevcut Mounting , Updating, Unmounting olarak ayrılır , ve ilk program çalıştığında sayfada bi değişiklik olduğunda yada sonlandırıldığında diye ayrılır. (render , constructor, componentWillMount, componentWillUpdate etc..)
React Native ile en çok kullanılan kütüphaneler
React native ile uygulama geliştirmeye başladığınızda sizinde bir alet çantanız yani fonksiyonlarınızdan yada sık kullandığınız nesnelerden oluşan bir kütüphaneniz oluşacak , bu oluşum proje geliştirdikçe ortaya çıkacaktır yani siz bir A projesini geliştirirken haberinizin dahi olmadığı kütüphaneler ile tanışacak ve kullanamaya başlayacaksınız , benimde en sık kullandığım kütüphanelere değinmek istiyorum
1 – ) Native Base
React Native için bootstrap diyebiliriz, yani react native in bootstrap ıdır, hazır tasarımların bulunduğu bir kütüphane , Card, Container , Left, Right, Header gibi nesneleri mevcut
sudo npm install native-base --save
2 – ) React Navigation
React native tarafında sayfalar arasında geçiş işleminizi yapabileceğiniz kütüphane 3 farklı nesnesi mevcut StackNavigator , DrawerNavigator, TabNavigator
sudo npm install react-navigation --save
3 – ) React Native Render HTML
Fetch ile aldığınız datanın HTML formatında olması durumunda bunun RN tarafında kolayca ekranda gösterilmesini sağlamak için yada HTML tagları ile tasarım yapmak direk CSS Kullanmak için kullanabileceğiniz bir kütüphane tek nesnesi mevcut <HTML html={this.state.data} />
sudo npm install react-native-render-html --save
4 – ) React Native Gifted Chat
İOS mesajlaşma tasarımının birebir kopyası kıvamında bir kütüphane ve mesajlaşma uygulaması yapıyorsanız sizin için en doğru seçenek olacaktır, direk nesneye bir Array atıyorsunuz ve mesaj baloncukları olarak size gösteriyor .
sudo npm install react-native-gifted-chat --save
sudo npm install react-native-modal --save
sudo npm install react-native-svg-charts --save