If you are a mobile developer who wants to target multiple platforms, Cordova can be difficult to overlook. In this video, Tom Duffy explores what Cordova does well.
Using Cordova gains you the ability to offer your app in the platform app stores where users want to get their apps. And you get to avoid learning all those complicated platform specific tools and technologies. Cordova supports a large number of platforms allowing you to write a single app and target just about any phone or tablet available today. For a complete list of supported platforms, and available features. See the Cordova Platform Support page.
At it's heart, Cordova is really a build tool. As input, it takes a web application and as output it produces native apps. You specify which device capabilities your app will need and add references to the plug-ins that make those capabilities available. Cordova's plug-ins are robust and extensive. For a complete list of official plug-ins head over to the Cordova plug-ins search page. Cordova is one of, if not the, oldest cross-platform tool available.
With that comes the benefit of having fixed many of the bugs that haunt younger tools. Cordova has even been around long enough for other frameworks to be built on top of it. We'll look at Ionic a little later in the course one of the examples of a framework built on top of Cordova. Another benefit of being first to the table is the large development community that surrounds Cordova. A good place to connect with Cordova developers is at stackoverflow's Cordova tagged questions.
Documentation is also a Cordova strength. It is robust and contains many useful examples ranging from small snippets to full blown apps. Explore Cordova's extensive documentation at cordova.apache.org Sometimes it's beneficial to look at what a given tool isn't rather than what it is, to determine benefits. Cordova is not an editor. It can't help you create the files nor the code needed for your app to function.
You'll need another tool to create those. In fact, Cordova has no user interface at all. Cordova isn't an integrated development environment. A super-set of an editor, an IDE usually includes and editor along with debugging tools. Many IDE's also manage things like software development kits and platform libraries. Most IDE's use a project based metaphor to keep track of your files. Projects are a great way to organize the creation of apps of any kind including mobile apps.
You also get to choose your editor. You aren't bound by any official tools like Android Studio or Xcode. These are just a few of the benefits of using Cordova. If you are interested in learning how to create a full-strength Cordova app, head back to the course library and take a look at my Cordova course where I build a location alert app for both Android and iOS.
- Hybrid vs. native cross-platform apps
- Choosing an editor
- Building a Cordova app
- Building an Ionic app
- Buildin an app with the Create React Native App
- Building an app with the React Native CLI
- Building a Titanium app
- Building a Xamarin app