React Native Nedir?

Nisan 05, 2018 -

React Native Facebook tarafından geliştirilmiş bir Native mobil platformudur. Aynı anda hem android hemde IOS'a hizmet verebilen bir JavaScript kütüphanesidir. Geliştiricilerin işlemleri daha kolay, hızlı ve derli toplu yapmalarını amaç edinmiştir.

Bu program ya da kütüphane size javascript kullanarak mobil uygulama geliştirmenize yardımcı oluyor. Bunu yaparken sizi HTML ve CSS ile uğraştırmıyor. Browser bağımsız bir yapıya sahip. Kendine has bir kod bloğu var ve sadece bunu web tabanlı render ediyor. Siz mobil bir uygulama geliştirdiğinizde ise kendi yapısını IOS ve android dillerine başarılı şekilde render edebiliyor.

Peki Neden React Native?

Kimileri angularjs tarafını tutarken diğer kısım react native tarafını tutuyor. Ben olsam en hızlı ve plugin desteği en iyi olan hibrit benzeri frameworkü seçerdim. Sizin bir şirket uygulamanız var ve sadece ufak bir haber haynağı içeriyorsa o zaman angularjs cordova kullanmanız daha mantıklı olabilir. Bir chat uygulamanız var ve grup konuşmaları, kişisel konuşmalar, haber kaynağı veya daha nice işlemler içeriyorsa o zaman hangi platformda kullanacaksanız (android, ios, vb..) o platformun kullandığı native dil ile yazılması daha uygundur (android studio, xcode, vb..). Ancak uygulamanız nativede yazacak vaktiniz yok veya sadece bir tane platform biliyorsanız o zaman react native kullanmanız mantıklıdır.

Açıkçası bizi react native'e iten şey hızı oldu. Bir hibrit benzeri framework ancak bu kadar hızlı olabilir. Angularjs 2 ile bir çıkış yaptı ama kullanıcıları çok da memnun edemedi. Angularjs 2'yi alt yapısını kullanan İonic 2 ile bir kaç deneme yaptık ama hız çok yüz güldürücü değildi. Angularjs 1 bizce daha hızlı idi. Sonuçta bir teknolojiyi sıfırdan öğrenecekseniz ondan daha iyi teknolojiler öğrenmek en avantajlı düşüncedir. Madem ben bir teknoloji baştan öğreniyorum ondan daha iyileri varsa onu öğrenmeliyim.

React Native gerçekten ‘Native’ dir.

Aslında kavramsal olarak React Native, hibrit uygulama framework’leri arasında gösterilse de, içinde barındırdığı özelliklerin hibrit kelimesinin çok çok ötesinde olduğu rahatlıkla söylenebilir. Facebook’un teknolojinin ismine Native kelimesi eklemesi ve projenin anasayfasındaki React Native tanıtımında özellikle vurgulaması bu konuda oldukça iddialı olduğunu gösteriyor.

Neler gördüm ?

  1. Babel syntax'i kullanıyor bkz
  2. İstediğiniz bir nodejs modülünü dahil edebiliyorsunuz.
  3. Mobil işlemler için yapılacak çoğu view var (Text, TextInput, ScrollView, vb..)
  4. Olmayan bir view olursa da onu rahatlıkla kendiniz yapabiliyorsunuz
  5. Şu ana kadar gördüğüm, düzgün bir Türkçe ile anlatım yapan kaynak çok az (çoğu kurulumundan bahsediyor)
  6. Animasyonların sayısı çok (örneğin sağdan sola, alttan üste, vb..)
  7. Live olarak aynı ağ üzerinden telefonunuzda test edebiliyorsunuz emülator kurmada sorun yaşarsanız bunu kullanabilirsiniz
  8. Tarayıcıda debug atabiliyorsunuz
  9. İos ve Android den başka platforma derleme yapamıyorsunuz (topluluğun geliştirdikleri ile derleyebilirsiniz)
  10. İonic gibi standart bir design patterni yok
  11. Github'da sayısız tutorial uygulamaları var
  12. React Native Community tarafından çeşitli extra viewlar sunuyor
  13. Element bind işlemi oldukça kolay ve döngüsel elementler zorluk çıkarmıyor.
  14. Sayfanın render fonksiyonu aynı sayfada olduğu için front-end yazanlar ve css yazanlar çakışma yaşabiliyor. (bu sorun değil ama mantıklı bir şekilde çözülebilir)
  15. Navigasyon özelliği LIFO (son giren ilk çıkar) mantığı ile yapılmış bir önceki sayfaya geçmek için en son nesneyi silmeniz yeterli oluyor
  16. Doküman oldukça iyi ve bir nesnenin hangi özelliklere sahip olduğunu ve ne işe yaradığını bulabiliyorsunuz.

 

React Native öğrenmek ve başlamak istiyorsanız bu linke tıklayarak ulaşabilirsiniz.

React Native ile ilgili kurs arıyorsanız önerim burasıdır.

Etiketler