React Native on the Universal Windows Platform
31–40 of 54 posts
Re: React Native on the Universal Windows Platform
#32Re: React Native on the Universal Windows Platform
#33Earlier quoted context omitted.
Runtime heap usage.
Isn't that a performance concern though? Especially within the context of a react native implementation that environment is already going to push you way above what is achievable with C++. If we're talking a 5% reduction in the net heap usage for a react native app at the cost of substantially more error prone code, is that really a win? Hell, make it 10%? These apps still readily fit in mobile hardware, and you woul…
Re: React Native on the Universal Windows Platform
#34Wait, so will the "jsx" files be HTML or XAML? If written in JS, where does C# come in?
Looks like it evaluates the JS and creates XAML elements programmatically using C#.
Re: React Native on the Universal Windows Platform
#35Earlier quoted context omitted.
Why does this generate C# instead of C++?
Because it's 2016 and the notion of pinning to C++ is sort of antiquated. C++ can deliver better performance in some cases, but it also brings about a great deal more risk of security issues involving arbitrary code execution and data corruption. You have to have VERY tight performance requirements to make C++ worth the risk it entails, in my opinion. If the only thing standing between you and a code injection exploi…
1. C++ is the only high-level language that is vendor supported across Linux, OSX, iOS, Windows, Windows Phone, and Android. React Native is aiming for cross-platform, using a cross-platform non-proprietary language would seem to be a better match. Along the same lines, there is less risk of vendor lock-in with C++ than with C#
2. While raw performance may be less of an issue, with mobile lightweight devices where use is limited by how long the battery lasts - performance per watt becomes an issue. Having a higher performance language can result in using less power and thus a better user experience.
3. Modern C++14 is much better in terms of memory safety and ease of use. The main issue with C++14 vs C# is that C# has better libraries, not with intrinsic usability of the language.
4. The issues with code execution and data corruption are significantly mitigated by the fact that you are targeting basically a sandboxed application. In addition, it is interesting to note that most desktop Win32 applications that people use on a daily basis are probably written in C++, and they have far more permissions than a universal windows app.
Re: React Native on the Universal Windows Platform
#36I am on the team at Microsoft that helped bring UWP to React Native. If there are questions, feel free to AMA. PS. Many thanks to the Facebook team for building a great platform in React Native and their critical help in helping us bring Windows to the platform.
Re: React Native on the Universal Windows Platform
#37Earlier quoted context omitted.
Runtime heap usage.
Isn't that a performance concern though? Especially within the context of a react native implementation that environment is already going to push you way above what is achievable with C++. If we're talking a 5% reduction in the net heap usage for a react native app at the cost of substantially more error prone code, is that really a win? Hell, make it 10%? These apps still readily fit in mobile hardware, and you woul…
Re: React Native on the Universal Windows Platform
#38For those interested, the GitHub repo is here: https://github.com/ReactWindows/react-native
Seems like every project they publish is under a different account.
Re: React Native on the Universal Windows Platform
#39Re: React Native on the Universal Windows Platform
#40Earlier quoted context omitted.
Why does this generate C# instead of C++?
Our belief is that using C# enables many more developers to contribute to the project and build plugins versus using C++0x. That said, this is not a final decision. We are open to making a change here if community overall has a reasoned opinion backed by data for using C++ instead.
And the well-known performance and memory advantages, however small, are critical for mobile devices. I don't think Microsoft should commit long-term to C# on mobile just as both Apple and supposedly Google are migrating to Swift as the future of their platforms, for good reason.
My two cents.