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

AngularJS

61K
44K
+ 1
5.3K
Apache Cordova

706
893
+ 1
218
Add tool

AngularJS vs Apache Cordova: What are the differences?

Introduction

In this Markdown code, we will discuss the key differences between AngularJS and Apache Cordova.

  1. Dependency Injection: AngularJS is a front-end JavaScript framework that supports dependency injection, allowing developers to efficiently manage dependencies within their applications. On the other hand, Apache Cordova is a platform that enables developers to build native mobile applications using HTML, CSS, and JavaScript. Unlike AngularJS, Apache Cordova does not provide built-in support for dependency injection.

  2. DOM Manipulation: AngularJS utilizes a two-way data binding feature that automatically synchronizes the model and the view, allowing developers to manipulate the DOM easily. With AngularJS, changes made in the model are reflected in the view and vice versa, without the need for explicit DOM manipulation. In contrast, Apache Cordova does not provide this level of automatic two-way data binding. Developers using Cordova need to manually handle DOM manipulation to update the view when changes occur in the model.

  3. Platform Support: AngularJS is primarily used for building web applications and does not have native platform support. It can be used on various platforms, including desktop and mobile web browsers. On the other hand, Apache Cordova is specifically designed for building hybrid mobile applications. Cordova provides a set of APIs that allow developers to access device-specific features like camera, geolocation, and contacts. These features are not available in AngularJS, which focuses mainly on providing a framework for web development.

  4. Performance: AngularJS can face performance issues when dealing with large and complex applications due to its two-way data binding mechanism. As the size of the application grows, AngularJS may experience a slowdown. In contrast, Apache Cordova applications can experience better performance as the DOM manipulation is manual and only occurs when necessary. Cordova applications can be optimized for better performance by minimizing unnecessary DOM updates.

  5. Testing: AngularJS provides built-in features for testing and facilitates unit testing, integration testing, and end-to-end testing. It offers tools like Karma and Protractor for efficient testing. Conversely, Apache Cordova does not have extensive built-in testing features. Testing hybrid mobile applications built with Cordova may require additional frameworks or libraries to be integrated.

  6. Deployment: AngularJS applications are deployed as web applications and are accessible through web browsers. These applications can run on any device with a browser and an internet connection. In contrast, Apache Cordova applications are deployed as native mobile applications that can be installed on mobile devices. These applications can be distributed through app stores and installed directly on the device, providing a more native-like experience.

In Summary, AngularJS is a front-end JavaScript framework primarily used for web development, providing features like dependency injection and two-way data binding, while Apache Cordova is a platform for building hybrid mobile applications, offering access to device-specific features and improved performance through manual DOM manipulation.

Advice on AngularJS and Apache Cordova
Needs advice
on
AngularJSAngularJSReactReact
and
Vue.jsVue.js

What is the best MVC stack to build mobile-friendly, light-weight, and fast single-page application with Spring Boot as back-end (Java)? Is Bootstrap still required to front-end layer these days?

The idea is to host on-premise initially with the potential to move to the cloud. Which combo would have minimal developer ramp-up time and low long-term maintenance costs (BAU support)?

See more
Replies (3)
Carolyne Stopa
Full Stack Developer at Contabilizei · | 10 upvotes · 603.2K views
Recommends
on
Vue.jsVue.js

React might be a good option if you're considering a mobile app for the future, because of react native. Although, Vue.js has the easiest learning curve and offers a better developer ramp-up time. Vue.js is great to build SPAs, very clean and organized and you won't have a lot of long-term maintenance problems (like AngularJS, for example). Bootstrap can still be used, but with flexbox there's no need anymore.

See more
Chaitanya Chunduri
Recommends
on
ReactReact

I recommend React because of less memory occupant compare to Angular, but this will depend on your organisation flexibility. When you use React you need to import different libraries as per your need. On the other side angular is a complete framework.

Performance-wise I vote for react js as it loads up quickly and lighter on the mobile. You can make good PWA with SSR as well.

See more
Recommends
on
ReactReact

If you are new to all three react will be a good choice considering, react-native will be useful if you want to build cross platform mobile application today or tomorrow. If you are talking about bootstrap styling framework than it's a choice you can style ur components by ur self or use bootstrap 4.0 framework. The complete stack mentioned above is platform agnostic u can run it anywhere you want be it cloud or on-premise.

See more
Decisions about AngularJS and Apache Cordova
Kamaleshwar BN
Senior Software Engineer at Pulley · | 10 upvotes · 656.3K views

It was easier to find people who've worked on React than Vue. Angular did not have this problem, but seemed way too bloated compared to React. Angular also brings in restrictions working within their MVC framework. React on the other hand only handles the view/rendering part and rest of the control is left to the developers. React has a very active community, support and has lots of ready-to-use plugins/libraries available.

See more
José Oberto
Head of Engineering & Development at Chiper · | 14 upvotes · 570K views

It is a very versatile library that provides great development speed. Although, with a bad organization, maintaining projects can be a disaster. With a good architecture, this does not happen.

Angular is obviously powerful and robust. I do not rule it out for any future application, in fact with the arrival of micro frontends and cross-functional teams I think it could be useful. However, if I have to build a stack from scratch again, I'm left with react.

See more
John Clifford de Vera
Software Engineer at CircleYY · | 21 upvotes · 435.7K views

I used React not just because it is more popular than Angular. But the declarative and composition it gives out of the box is fascinating and React.js is just a very small UI library and you can build anything on top of it.

Composing components is the strongest asset of React for me as it can breakdown your application into smaller pieces which makes it easy to reuse and scale.

See more
Dennis Ziolkowski
Migrated
from
AngularJSAngularJS
to
AngularAngular

I was first sceptical about using Angular over AngularJS. That's because AngularJS was so easy to integrate in existing websites. But building apps from scratch with Angular is so much easier. Of course, you have to build and boilerplate them first, but after that - you save a ton of time. Also it's very cozy to write code in TypeScript.

See more
Simon Reymann
Senior Fullstack Developer at QUANTUSflow Software GmbH · | 24 upvotes · 4.9M views

Our whole Vue.js frontend stack (incl. SSR) consists of the following tools:

  • Nuxt.js consisting of Vue CLI, Vue Router, vuex, Webpack and Sass (Bundler for HTML5, CSS 3), Babel (Transpiler for JavaScript),
  • Vue Styleguidist as our style guide and pool of developed Vue.js components
  • Vuetify as Material Component Framework (for fast app development)
  • TypeScript as programming language
  • Apollo / GraphQL (incl. GraphiQL) for data access layer (https://apollo.vuejs.org/)
  • ESLint, TSLint and Prettier for coding style and code analyzes
  • Jest as testing framework
  • Google Fonts and Font Awesome for typography and icon toolkit
  • NativeScript-Vue for mobile development

The main reason we have chosen Vue.js over React and AngularJS is related to the following artifacts:

  • Empowered HTML. Vue.js has many similar approaches with Angular. This helps to optimize HTML blocks handling with the use of different components.
  • Detailed documentation. Vue.js has very good documentation which can fasten learning curve for developers.
  • Adaptability. It provides a rapid switching period from other frameworks. It has similarities with Angular and React in terms of design and architecture.
  • Awesome integration. Vue.js can be used for both building single-page applications and more difficult web interfaces of apps. Smaller interactive parts can be easily integrated into the existing infrastructure with no negative effect on the entire system.
  • Large scaling. Vue.js can help to develop pretty large reusable templates.
  • Tiny size. Vue.js weights around 20KB keeping its speed and flexibility. It allows reaching much better performance in comparison to other frameworks.
See more
Julius alvarado

It is a complete waste of time and life to learn a different framework to solve the same problem (Both AngularJS and Angular build A+ UI's, but both require a lot of time to learn). It's dumb to spend 200 hours learning AngularJS, then 200 hours learning Angular when you could spend 200 hours learning AngularJS and 200 hours learning how to solve a different problem (like AI/ML, Data Science, AR/VR, Digital Marketing, etc.)

See more
Jonas Stendahl

React has by far and away been our most important library choice throughout the history of Sellpy. It is a library that offers great flexibility supported by a really strong core. The React team is doing incredible work bringing quality features to the core project and tons of quality third party libraries fill in the gaps.

See more
Aleksandr Filatov
Contract Software Engineer - Microsoft · | 2 upvotes · 414.1K 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 · 113.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
Manuel Schoebel

When first used Angular, the documentation was horrible and also the construct of Angular super academic and hard to learn (back in 2014). When evaluating React it was way easier getting stated even though its html in js (jsx) approach was very different. After some time we really started to like the co-location and component based model. If you architect well, you will have a component completely in one file including js/html/css.

We solely focus on one technology for frontend development. The reason for that is, that offering customers excellent services we need to be up to date on all developments of the framework but also its community and vast amount of packages. Reading blogs, newsletters, podcasts and so on. You will realistically only be able to be really good at one, so thats for us: React!

See more
Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of AngularJS
Pros of Apache Cordova
  • 889
    Quick to develop
  • 589
    Great mvc
  • 573
    Powerful
  • 520
    Restful
  • 505
    Backed by google
  • 349
    Two-way data binding
  • 343
    Javascript
  • 329
    Open source
  • 307
    Dependency injection
  • 197
    Readable
  • 75
    Fast
  • 65
    Directives
  • 63
    Great community
  • 57
    Free
  • 38
    Extend html vocabulary
  • 29
    Components
  • 26
    Easy to test
  • 25
    Easy to learn
  • 24
    Easy to templates
  • 23
    Great documentation
  • 21
    Easy to start
  • 19
    Awesome
  • 18
    Light weight
  • 15
    Angular 2.0
  • 14
    Efficient
  • 14
    Javascript mvw framework
  • 14
    Great extensions
  • 11
    Easy to prototype with
  • 9
    High performance
  • 9
    Coffeescript
  • 8
    Two-way binding
  • 8
    Lots of community modules
  • 8
    Mvc
  • 7
    Easy to e2e
  • 7
    Clean and keeps code readable
  • 6
    One of the best frameworks
  • 6
    Easy for small applications
  • 5
    Works great with jquery
  • 5
    Fast development
  • 4
    I do not touch DOM
  • 4
    The two-way Data Binding is awesome
  • 3
    Hierarchical Data Structure
  • 3
    Be a developer, not a plumber.
  • 3
    Declarative programming
  • 3
    Typescript
  • 3
    Dart
  • 3
    Community
  • 2
    Fkin awesome
  • 2
    Opinionated in the right areas
  • 2
    Supports api , easy development
  • 2
    Common Place
  • 2
    Very very useful and fast framework for development
  • 2
    Linear learning curve
  • 2
    Great
  • 2
    Amazing community support
  • 2
    Readable code
  • 2
    Programming fun again
  • 2
    The powerful of binding, routing and controlling routes
  • 2
    Scopes
  • 2
    Consistency with backend architecture if using Nest
  • 1
    Fk react, all my homies hate react
  • 48
    Lots of plugins
  • 35
    JavaScript
  • 26
    Great community
  • 25
    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
  • 4
    Easy debugging
  • 3
    HTML, CSS and JS
  • 3
    Fast and hot reload
  • 3
    Rich css ui
  • 3
    Use what you code in your browser
  • 2
    Need a light system
  • 2
    Native Web Technologies
  • 2
    Without extra tooling needed
  • 2
    One code base everywhere

Sign up to add or upvote prosMake informed product decisions

Cons of AngularJS
Cons of Apache Cordova
  • 12
    Complex
  • 3
    Event Listener Overload
  • 3
    Dependency injection
  • 2
    Hard to learn
  • 2
    Learning Curve
  • 2
    No native performance
  • 1
    Hard to install
  • 0
    Hard to install

Sign up to add or upvote consMake informed product decisions

What is AngularJS?

AngularJS lets you write client-side web applications as if you had a smarter browser. It lets you use good old HTML (or HAML, Jade and friends!) as your template language and lets you extend HTML’s syntax to express your application’s components clearly and succinctly. It automatically synchronizes data from your UI (view) with your JavaScript objects (model) through 2-way data binding.

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.

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

What companies use AngularJS?
What companies use Apache Cordova?
Manage your open source components, licenses, and vulnerabilities
Learn More

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

What tools integrate with AngularJS?
What tools integrate with Apache Cordova?

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

Blog Posts

JavaScriptGitHubReact+12
5
4204
Oct 11 2019 at 2:36PM

LogRocket

JavaScriptReactAngularJS+8
5
2013
Vue.jsSpring BootUnity+7
2
1261
GitGitHubPython+22
17
14283
JavaScriptGitHubNode.js+26
20
5028
What are some alternatives to AngularJS and Apache Cordova?
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
Angular
It is a TypeScript-based open-source web application framework. It is a development platform for building mobile and desktop web applications.
React
Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project.
Node.js
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
jQuery
jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.
See all alternatives