JUniversal
JUniversal

1
7
0
React Native
React Native

5.5K
4.5K
891
Add tool

JUniversal vs React Native: What are the differences?

JUniversal: A new, Java-based approach to cross-platform mobile apps (used by Google Inbox and Google Spreadsheets). The vision of JUniversal came from some guys at Nokia who possess considerable expertise both in Java and in building cross-platform apps. They built this tool to provide an elegant way to translate source code and make it useful across multiple platforms. JUniversal offers you the freedom to write your shared code in Java and then translate it to C# (available now) or to C++/Objective C++ (coming soon). You can also combine JUniversal with Google’s j2objc translator to translate Java to Objective-C for iOS; React Native: A framework for building native apps with React. React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native.

JUniversal and React Native can be primarily classified as "Cross-Platform Mobile Development" tools.

Some of the features offered by JUniversal are:

  • OAuth (based on Scribe)
  • JSON
  • Unit testing (JUnit)

On the other hand, React Native provides the following key features:

  • Native iOS Components
  • Asynchronous Execution
  • Touch Handling

JUniversal and React Native are both open source tools. React Native with 78.8K GitHub stars and 17.6K forks on GitHub appears to be more popular than JUniversal with 132 GitHub stars and 22 GitHub forks.

What is JUniversal?

The vision of JUniversal came from some guys at Nokia who possess considerable expertise both in Java and in building cross-platform apps. They built this tool to provide an elegant way to translate source code and make it useful across multiple platforms. JUniversal offers you the freedom to write your shared code in Java and then translate it to C# (available now) or to C++/Objective C++ (coming soon). You can also combine JUniversal with Google’s j2objc translator to translate Java to Objective-C for iOS.

What is React Native?

React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native.

Want advice about which of these to choose?Ask the StackShare community!

Why do developers choose JUniversal?
Why do developers choose React Native?
    Be the first to leave a pro

    Sign up to add, upvote and see more prosMake informed product decisions

    What are the cons of using JUniversal?
    What are the cons of using React Native?
      Be the first to leave a con
      What companies use JUniversal?
      What companies use React Native?

      Sign up to get full access to all the companiesMake informed product decisions

      What tools integrate with JUniversal?
      What tools integrate with React Native?

      Sign up to get full access to all the tool integrationsMake informed product decisions

      What are some alternatives to JUniversal and React Native?
      Ionic
      Free and open source, Ionic offers a library of mobile and desktop-optimized HTML, CSS and JS components for building highly interactive apps. Use with Angular, React, Vue, or plain JavaScript.
      Xamarin
      Xamarin’s Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry’s most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.
      Apache Cordova
      Apache Cordova is a set of device APIs that allow a mobile app developer to access native device function such as the camera or accelerometer from JavaScript. Combined with a UI framework such as jQuery Mobile or Dojo Mobile or Sencha Touch, this allows a smartphone app to be developed with just HTML, CSS, and JavaScript.
      PhoneGap
      PhoneGap is a web platform that exposes native mobile device apis and data to JavaScript. PhoneGap is a distribution of Apache Cordova. PhoneGap allows you to use standard web technologies such as HTML5, CSS3, and JavaScript for cross-platform development, avoiding each mobile platforms' native development language. Applications execute within wrappers targeted to each platform, and rely on standards-compliant API bindings to access each device's sensors, data, and network status.
      Flutter
      Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.
      See all alternatives
      Decisions about JUniversal and React Native
      No stack decisions found
      Interest over time
      Reviews of JUniversal and React Native
      Avatar of tonyxiao
      Economics
      Review ofReact NativeReact Native

      Native iOS developer here. One of the most important thing React Native managed to accomplish is that it created a better single-platform development experience than the platform owner themselves did. It's faster and easier to develop a react native app than it is to develop an iOS app. And remember that react native is at the end of the day still native. So native views, native components, native modules. You get to pick and choose how much you want to be in JavaScript and how much you want to be in native.

      How developers use JUniversal and React Native
      Avatar of Google
      Google uses JUniversalJUniversal

      Comment from HackerNews (https://news.ycombinator.com/item?id=8998736)

      This is how Google Inbox and Google Spreadsheets works. See the slides from my recently produced GWT Create Session (http://t.co/ZvoaHxCoZT). J2ObjC slide deck here (https://docs.google.com/presentation/d/1mW_Plm5jAygELf7qjVK7...) Videos of the conference will be online soon.

      Prior to that, some 20% Googlers also produced the PlayN library (https://github.com/threerings/playn) This was taken over by Michael Bayne who added an iOS backend by Bytecode -> IKVM -> Mono conversion. I beleive j2objc and RoboVM backends exist now as well.

      The major benefit of the j2objc approach is the avoidance of GC in favor of ARC, the conversion of message-sends into C-method calls when possible, and integration with existing iOS toolchain.

      When we started, it seemed like an iffy idea, but after developing a product delivered to millions of users on a high volume site (gmail) that has 70% code sharing, and being able to simultaneously develop, test, and deploy across the platforms reasonably efficiently, a lot of skeptics have become converts to the concept.

      Avatar of Kurzor, s.r.o.
      Kurzor, s.r.o. uses React NativeReact Native

      React Native is great in that it reduces the overhead of writing native code based on a web app. If written in a good style, Redux part of the app can often just be copied or shared in the Native app - and it just works! What a timesaver.

      Avatar of Ryan VanBelkum
      Ryan VanBelkum uses React NativeReact Native

      The framework used to write the mobile apps in this project. I've chosen this because of the "write once run all" (ios and android) mentality.

      Avatar of AmericanBibleSociety
      AmericanBibleSociety uses React NativeReact Native

      We are not currently using this product but we have very high interest in learning and using this for mobile apps.

      Avatar of JINJA Ltd.
      JINJA Ltd. uses React NativeReact Native

      New features of our app are developed on React Native, so we could maintain a small dev team.

      Avatar of Tana
      Tana uses React NativeReact Native

      100% of our mobile codebase is shared between iOS and Android. Using along with TypeScript.

      How much does JUniversal cost?
      How much does React Native cost?
      Pricing unavailable
      Pricing unavailable
      News about JUniversal
      More news