Need advice about which tool to choose?Ask the StackShare community!

Apache Cordova

669
814
+ 1
207
Groovy

1.2K
655
+ 1
202
Add tool

Apache Cordova vs Groovy: What are the differences?

Apache Cordova: Platform for building native mobile applications using HTML, CSS and JavaScript. 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; Groovy: A dynamic language for the Java platform. Groovy builds upon the strengths of Java but has additional power features inspired by languages like Python, Ruby and Smalltalk. It makes modern programming features available to Java developers with almost-zero learning curve.

Apache Cordova can be classified as a tool in the "Cross-Platform Mobile Development" category, while Groovy is grouped under "Languages".

"Lots of plugins" is the primary reason why developers consider Apache Cordova over the competitors, whereas "Java platform" was stated as the key factor in picking Groovy.

Apache Cordova and Groovy are both open source tools. It seems that Groovy with 1.49K GitHub stars and 414 forks on GitHub has more adoption than Apache Cordova with 766 GitHub stars and 327 GitHub forks.

According to the StackShare community, Groovy has a broader approval, being mentioned in 79 company stacks & 73 developers stacks; compared to Apache Cordova, which is listed in 96 company stacks and 45 developer stacks.

Decisions about Apache Cordova and Groovy
Aleksandr Filatov
Contract Software Engineer - Microsoft · | 2 upvotes · 140.4K views

I've done some Hybrid Mobile apps with both technologies Apache Cordova and React Native and described my experience in my blog.

In a few words, I would suggest to use each technology in accordance what what is your current code base and what do you want to achieve.

React Native is a great option if you need that extra edge in performance with multi-threading and native UI rendering. Or you already have a web app based on React which you want to port to mobile.

On the other hand, if you have an existing web application code and you want to reuse some or all, including the ability to use web third-party libraries, then Cordova is the best option.

See more
Aleksandr Filatov
Contract Software Engineer - Microsoft · | 2 upvotes · 60.8K views
What is Proguard?

ProGuard is the most popular optimizer for Java bytecode. It makes your Java and Android applications up to 90% smaller and up to 20% faster. ProGuard also provides minimal protection against reverse engineering by obfuscating the names of classes, fields and methods.

How to use it in Cordova app?

I didn't find any plugins for it. So I've implemented it by myself and shared it on GitHub.

Feel free to use!

See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of Apache Cordova
Pros of Groovy
  • 41
    Lots of plugins
  • 34
    JavaScript
  • 26
    Great community
  • 23
    Easy Development
  • 18
    Easy to learn
  • 15
    Cross platform
  • 7
    Open Source
  • 6
    Easy, fast, not buggy in my experience with my code
  • 6
    Lots of descendants; PhoneGap, Ionic, Intel XDA etc
  • 4
    Can use CSS3
  • 4
    Rich HTML 5
  • 3
    Fast and hot reload
  • 3
    HTML, CSS and JS
  • 3
    Easy debugging
  • 3
    Use what you code in your browser
  • 3
    Rich css ui
  • 2
    One code base everywhere
  • 2
    Without extra tooling needed
  • 2
    Native Web Technologies
  • 2
    Need a light system
  • 43
    Java platform
  • 32
    Much more productive than java
  • 28
    Concise and readable
  • 27
    Very little code needed for complex tasks
  • 21
    Dynamic language
  • 12
    Nice dynamic syntax for the jvm
  • 9
    Very fast
  • 6
    Easy to setup
  • 6
    Can work with JSON as an object
  • 5
    Literal Collections
  • 5
    Supports closures (lambdas)
  • 2
    Syntactic sugar
  • 2
    Developer Friendly
  • 2
    Interoperable with Java
  • 2
    Optional static typing

Sign up to add or upvote prosMake informed product decisions

Cons of Apache Cordova
Cons of Groovy
  • 2
    No native performance
  • 1
    Hard to install
  • 0
    Hard to install
  • 3
    Groovy Code can be slower than Java Code
  • 1
    Objects cause stateful/heap mess

Sign up to add or upvote consMake informed product decisions

What is 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.

What is Groovy?

It is a powerful multi-faceted programming language for the JVM platform. It supports a spectrum of programming styles incorporating features from dynamic languages such as optional and duck typing, but also static compilation and static type checking at levels similar to or greater than Java through its extensible static type checker. It aims to greatly increase developer productivity with many powerful features but also a concise, familiar and easy to learn syntax.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Apache Cordova?
What companies use Groovy?
See which teams inside your own company are using Apache Cordova or Groovy.
Sign up for Private StackShareLearn More

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

What tools integrate with Apache Cordova?
What tools integrate with Groovy?

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

Blog Posts

+4
4
1804
+7
2
961
What are some alternatives to Apache Cordova and Groovy?
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.
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.
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.
Electron
With Electron, creating a desktop application for your company or idea is easy. Initially developed for GitHub's Atom editor, Electron has since been used to create applications by companies like Microsoft, Facebook, Slack, and Docker. The Electron framework lets you write cross-platform desktop applications using JavaScript, HTML and CSS. It is based on io.js and Chromium and is used in the Atom editor.
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.
See all alternatives