4 ms·
Can someone compare their productivity with React Native or Xamarin to "native" Java/Kotlin development? Having used RN, the whole state/data layer can be share
by bauerd 9y ago
Can someone compare their productivity with React Native or Xamarin to "native" Java/Kotlin development? Having used RN, the whole state/data layer can be shared across two platforms, and I guess the same is doable with C# and Xamarin. I get that both require bridges when interfacing with ObjC/Java, whereas Kotlin seems to have great (but only) Java interop.
- m_fayer 9y agoI can only say I'm way more productive in Xamarin than I am in Android native with Java, I do a fair bit of both. I'm excited about Kotlin and will definitely give it a try, but Xamarin does still retain some advantages over Kotlin, even though it seems to be a slightly more advanced language than C#: Xamarin allows you to target iOS, MacOS, and Windows in addition to Android. Though you have to rewrite the view layer for each platform. If your view layer is in HTML, then you mostly have WORA. Xamarin converts a lot of crufty weird Android API to a slightly more modern form. So instead of int constants hanging off random classes all over the place, you have proper enums. Coroutines and async/await seem much more ready for primetime in C# than in Kotlin. Xamarin builds seem saner and faster than Android native. There's some very advanced and battle-tested C# libraries that Xamarin opens up that I think are unmatched in native Android land. For full-application frameworks, ORMs, DI, databinding, and serialisation. There's way more C# devs in the world than Kotlin devs. Though I have to say that Xamarin has one big disadvantage - it adds another layer of sometimes leaky abstraction, and a whole new source of framework bugs to Android. So you spend a lot of time asking yourself "is this a Google bug, or a Xamarin bug, or my bug?"
- miguelrochefort 9y agoThat is my experience as well with Xamarin.
- pjmlp 9y ago> Though I have to say that Xamarin has one big disadvantage - it adds another layer of sometimes leaky abstraction, and a whole new source of framework bugs to Android. So you spend a lot of time asking yourself "is this a Google bug, or a Xamarin bug, or my bug?" This the main reason why while I dabble in all interesting technologies to get a taste of what they bring into the table, production code is always written 100% with official SDK languages for the system being targeted.
- deleted 9y ago[deleted]
- tobiaswk 9y agoI haven't used Xamarin. React Native I have used. You can make some stuff really fast but I feel like some stuff is unfinished at this point. As an example simple navigation does not feel complete with React Native.