Flutter vs JUniversal: What are the differences?
Developers describe Flutter as "Cross-platform mobile framework from Google". Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android. On the other hand, JUniversal is detailed as "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.
Flutter and JUniversal can be categorized as "Cross-Platform Mobile Development" tools.
Some of the features offered by Flutter are:
- Fast development - Flutter's "hot reload" helps you quickly and easily experiment, build UIs, add features, and fix bug faster. Experience sub-second reload times, without losing state, on emulators, simulators, and hardware for iOS and Android.
- Expressive UIs - Delight your users with Flutter's built-in beautiful Material Design and Cupertino (iOS-flavor) widgets, rich motion APIs, smooth natural scrolling, and platform awareness.
- Access native features and SDKs - Make your app come to life with platform APIs, 3rd party SDKs, and native code. Flutter lets you reuse your existing Java, Swift, and ObjC code, and access native features and SDKs on iOS and Android.
On the other hand, JUniversal provides the following key features:
- OAuth (based on Scribe)
- JSON
- Unit testing (JUnit)
Flutter and JUniversal are both open source tools. Flutter with 69.4K GitHub stars and 8.09K forks on GitHub appears to be more popular than JUniversal with 132 GitHub stars and 22 GitHub forks.