Thứ Năm, 3 tháng 1, 2019

06 top complementary Cross-Platform tools for app developers

Tpptechnology-cross-platform-development-tools-comparison

Mobile app developers, especially freelance ones, mostly choose free development tools for their cross platform app development projects. Some of them are totally free, others are partially with paid plans. Today post will go over the tools so that we could see the overview of them and choose the best one for our coming work.



 

What

Pros

Cons

Apache Cordova

·     Apache Cordova is first on this list because it powers the build process for most free cross-platform mobile application development tools, and many that aren't free, for that matter.
·     Formerly known as PhoneGap, Adobe released Cordova as an open-source project which, as of this writing, has received contributions from BlackBerry, Google, IBM, Intel and Microsoft.
·     The majority of cross-platform mobile application development tools on this list, both free and paid, use Cordova to package a single codebase into a native executable. Cordova first bundles HTML, CSS and JavaScript into a client-side package. Then, the software executes and renders the custom code within a native WebView — this is known as the “hybrid” application technique. The hybrid approach provides a Write-Once-Run-Anywhere solution (WORA).
·     Cutting out the middleman. By working directly on top of Cordova, developers have access to the latest updates from Apache’s team.

·     With each version, Cordova gains access to critical OS enhancements. These enhancements may improve Cordova’s performance and provide it with access to new APIs.

·     Build right on top of Cordova and you’ll never miss out.
·  Cordova is UI and framework-agnostic. It leaves all the design and architecture decisions to the developer.

·  This may not be an issue if you’ve built mobile-first websites before. But if this is your first time working on a mobile application, consider a framework that does a bit more hand-holding.

·  And according to StackOverflow’s developer survey, developers dread working with Cordova above all others.

Adobe PhoneGap

·     The actual PhoneGap product is separate from Apache Cordova. As stated above, PhoneGap was originally the basis for Cordova, but is now a standalone product powered by Cordova—times they are a changin’. The primary benefit Adobe provides with PhoneGap is a GUI build system that abstracts the command line messiness of Apache Cordova.

·     By providing an interface to build Cordova applications, PhoneGap simplifies the process and gets developers working sooner. PhoneGap also offers an application server you can run from your machine to host your apps over the network. The server accelerates the build→run→revise loop so developers can spend more time coding and less time running, compiling, and deploying manual updates.
· Providing a GUI build system and template projects to help kick-start hybrid development (one of those templates includes another tool on this list, Framework 7).

· PhoneGap also has the continued support of Adobe and hundreds of open-source developers.
PhoneGap does not have a strong opinion on how to build applications. So while it simplifies Cordova, it will not hold your hand much further.

Ionic Framework

·     In the previous section, I revealed that PhoneGap is a thin layer above Apache Cordova that improves the hybrid development experience without forcing an application paradigm or structure onto the developer. For a similar yet more opinionated tool that provides an excellent development experience, consider the Ionic Framework.

·     Ionic combines Angular with its own UI library to provide a cross-platform mobile application development experience that many web developers will find familiar. They find it so familiar in fact, that Ionic has become synonymous with cross-platform hybrid development. More so than PhoneGap, actually. However, Ionic’s mobile build process relies on PhoneGap and therefore also inherits all of Apache Cordova’s plugins.
· Ionic is the world’s prevailing hybrid cross-platform solution because it allows web developers to continue using the front-end framework many of them are familiar with: Angular.

· By incorporating Angular into their framework, Ionic eases the transition from web to mobile development. Ionic also supports Progressive Web Applications that run in Chrome, and hybrid desktop applications enabled by Electron.

Framework 7

·     Framework7 provides an application framework (built on Vue.js) and a host of ready-made interface elements that mimic native interfaces. This tool recreates standard iOS designs and Google’s Material Design patterns to replicate the “native look” mobile users expect. Here’s an example of how Framework7 helps developers make carbon copies of iOS designs:

·     Framework7 also allows developers to customize the interface — these built-in themes are merely guidelines that can shorten development time.
· Framework7 adds two critical layers to Cordova application structure and interface elements. If you’re willing to sacrifice a little control, you will gain plenty of out-of-the-box capabilities with Framework7.

· These features will accelerate your development cycle when compared to working with Cordova directly.
·     There is no guarantee the Framework7 community will remain active and consistently incorporate the latest designs from Cupertino and Mountain View, potentially leaving applications looking out-of-date.

·     Framework7 is also highly opinionated. If you’re not a fan of Vue or are unwilling to learn, you will have to look for another tool.

Apache Weex

·     This is another one of the Apache-sponsored free cross-platform mobile application development tools. The developers of Weex combined the idea behind Cordova with a runtime JavaScript interpreter. Their tool generates native experiences from a single source code whereas Cordova executes JavaScript and renders HTML in a WebView. Weex interprets HTML and renders it dynamically using native view elements.

·     Like Framework7, Weex provides UI components out of the box. But these elements translate to their native counterparts during interpretation, thereby boosting performance considerably. And like Cordova, Weex has a strong community of independent developers that contribute new design and interface plugins to keep the platform current.
·  Performance. Weex will execute JavaScript applications at near-native speeds.

·  And users will find it difficult to distinguish a Weex application from a native one: both employ native UI elements whereas hybrid (WebView-based apps) render HTML and CSS directly.
·     Weex is not fully endorsed by the Apache Software Foundation. It is currently an incubation project. And developers will not be able to port apps written on Weex to other platforms.

·     So if Weex fails to acquire endorsement, developers may be forced to rewrite a considerable portion of their apps in the future.

React Native

·     React Native is unquestionably the most popular JavaScript-to-native platform. The tool owes its popularity to its famous founder: Facebook. Both Facebook’s and Instagram’s native applications are built with React Native. If two of the world’s most heavily-used applications can trust this framework, so can you.
·      React Native is battle-tested. Facebook and Instagram have millions of daily-active-users each, and those users demand performance. And as long as those products rely on React Native, developers can expect Facebook engineers to regularly update this framework. And just like Weex and other JavaScript-to-Native platforms, React Native offers a performance edge over hybrid solutions.
·  If you don’t like to work with React, don’t expect React Native to change your mind. And compared to earlier tools in this list, React Native is not a WORA solution.

·   This may not be an issue for all, but React Native requires that developers tailor each interface implementation to its targeted platform. That means you will create both an Android and an iOS version of each screen and element.

·  And despite relying on web technologies like JavaScript, the interface is a mix of custom markup language and native UI. Therefore, developers cannot use existing CSS libraries or jQuery plugins.

As medal has two sides, each tool therefore embraces their own drawbacks. So, developers when choosing what tool to work on for their project should consider many factors. More tools would offer more options but at the same time could make it a bit more confusing at the beginning to choose among the suitable one.



Không có nhận xét nào:

Đăng nhận xét

Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.

Digital Transformation In Supply Chain Management

Digital transformation is a term that is thrown around a lot, and people have different ways to interpret what it means. Essentially, digita...