Başlangıçta native'i katmayalım. Ionic'i ise hibrit bir çözüm olduğu için eliyorum. Performansı kullanıcı deneyimi için tatmin etmeyecektir.

Xamarin ve React Native arasındaki seçim yazılımcıya bağlı diye düşünüyorum. JavaScript'e hakimse React Native, C#'a hakimse Xamarin kullanabilir. Xamarin kullanmadığım için daha ayrıntılı bir yorum yapamayacağım. Performans ve native hissiyat olarak fark edilecek bir sıkıntı olacağını zannetmiyorum. Ayrıca Xamarin tamamen ücretsiz değildi sanırım.

Bence asıl konu React Native ve Flutter arasında olmalı. Evet listeye Flutter ekleyelim. Nedir bu Flutter? Kısaca React Native'in daha genç bir rakibi diyebiliriz. Google tarafından sunuldu ve Dart diliyle ile kullanılıyor. 1.0 versiyonu bu ay başı çıktı sanırım. Şu an için React Native'i community desteği dolayısıyla tercih ederim. Flutter için örnek app incelediğimde özellikle navigation performansı yetersiz gelmişti, o app ile alakalı da olabilir. Bir de Dart öğrenmek var tabii. Ayrıca Flutter'ın sahip olduğu native widget'lar dışında daha kompleks bir app düşünüyorsanız, yetersiz gelecektir. En azından Flutter için bir süre daha gerekli, ileride tercih sebebi olabilir fakat bu React Native'in gelişimine de bağlı. Şuan için tercihim React Native.

Native mi React Native mi dersek, tabiki de Native derim. Şu an native performansı hiçbiri kolay kolay veremiyor fakat gidip de Swift ve Java öğrenip 2 farklı app yazma zamanınız yoksa React Native sizi üzmeyecektir.

React Native ile app geliştiriyorum. Arada derleyici sorunları gibi uğraştıracak problemler çıkarsa da gerek performansı, gerek development kolaylığı, gerekse de JS'e hakim olmamdan dolayı benim için kendisi "şu an için" kazanandır. Swift biliyorum, Java için de zaman ayırıp öğrenebilirim fakat özellikle startup'lar için 2 ayrı app'e zaman harcamak mantıklı değil. Ayrıca app yaptırmak istiyorsanız Native çok daha pahalı bir seçim olacaktır.