4 ms·
Do apps written in C# with Xamarin perform better than those written in React Native? What are the differences?
by nshung 11y ago
Do apps written in C# with Xamarin perform better than those written in React Native? What are the differences?
- iLoch 11y agoReact Native applications will be faster to develop thanks to React being inherently fast to develop. I would expect a React Native app to perform the same or better than Xamarin, due to React Native's asynchronous bridge approach. I don't have data to back this up, though.
- moonchrome 11y agoJS apps being faster to develop than C# ? Maybe prototype, but .NET/C# are superior dev platforms in every way.
- junto 11y agoDidn't Xamarin compile the C# to native? Isn't this an apples to oranges comparison?
- moonchrome 11y agoI'm not talking about execution performance - I'm talking faster to develop for. It might be faster to get "hello world" running in JS but once you have a few people working on a project and need to do nontrivial stuff not provided by "JS framework X" (in this case React) you'll see the value of having sane language semantics, static typing, tools and a mature ecosystem (much higher quality than JS).
- iLoch 11y agoThese tools exist in Javacript. I'm not saying C# is inferior at all, but JS is not inferior to C# here. TypeScript/Flow are backwards compatible with JS so you can add static typing to your JS at any time. React Native is capable of doing anything a native runtime can do because it too is native. High quality tools do now exist that bring type checking, Intellisense, hot module replacement, etc.
- kristianp 11y agoI think the reasoning behind this is that react allows you to almost instantly see the result of code changes in your app. With c# you have to wait minutes for each build and deployment cycle, which is painful. In terms of runtime performance, I guess in theory c# should be faster than javascript, but it depends on a lot of things, like the program being run, the speed of the mono runtime on the android or IOS platform being used, etc.
- ghuntley 11y agoXamarin has continuous/live coding. If you're doing the code -> compile -> deploy -> watch dance then you're doing it wrong. https://www.youtube.com/watch?v=lH90fVkXQx8 https://www.youtube.com/watch?v=lH90fVkXQx8
- kristianp 11y agoCool, thanks.
- iLoch 11y agoThe reasoning is that with Xamarin you're still writing imperative code (AFAIK) whereas React is declarative. The result from a perspective of creating UI is that it's much faster and easier to create a UI in React. I don't think anyone would disagree with me here unless they haven't used React.
- mixedCase 11y agoI have tried some React Native demos and they all performed slower than similar Xamarin demos. Better than HTML5 is still not good enough.
- iLoch 11y agoI'd like to see what demos you're referring to. React Native runs as 60fps. It's native code, so if there's any problems with performance it's not JS that's the issue.
- ghuntley 11y agoWrong, Xamarin has continuous/live coding. If you're doing the code -> compile -> deploy -> watch dance then you're doing it wrong. https://www.youtube.com/watch?v=lH90fVkXQx8 https://www.youtube.com/watch?v=lH90fVkXQx8
- iLoch 11y agoReact Native supports this.