混合JavaScript移动开发-Apache Cordova与带有Ionic的电容器,NativeScript和React Native

首先,希望如此,这个问题不要太广泛。来自前端背景,我正在考虑开始学习一种与JavaScript相关的移动开发框架。 这是第一个问题,我应该选择Apache Cordova还是Capacitor?我将第一个用于Phaser(HTML5)游戏开发的爱好项目当作是第一个问题,而不是诚实的最佳体验。根据Stack Overflow年度报告,我能感觉到Apache Cordova为什么是最令人讨厌的技术之一。

接下来是第二个问题,我应该选择Ionic,NativeScript还是React Native? React是“三巨头”中唯一的一个前端框架,我对此感到不舒服。远。我在Angular和Vue.js方面的经验相当不错,因此我想在我的移动应用程序项目中也使用它们,因此我对Ionic或NativeScript有所偏见。另一方面,React Native具有最多的GitHub星级。我认为可能是有原因的。

然后是最后一个,是否可以将Apache Cordova /电容器与以下任何一种结合使用:Ionic / NativeScript / React Native,或者某些可以使工作更容易的事情,例如将Capacitor和Ionic结合使用? 是同一家公司这样做的,因此我认为它应该是相对无缝的组合。

编辑:

最后一个-为了从移动应用程序的同一代码库制作PWA,我只能使用Ionic吗?

aaazhq 回答:混合JavaScript移动开发-Apache Cordova与带有Ionic的电容器,NativeScript和React Native

在某种程度上,答案将取决于您自己的个人经验/知识,个人喜好(您的思维方式和工作方式)以及最终您对项目的性能要求。像您一样,我也研究了所有这些框架并使用了大多数框架。他们中的任何一个最终都将完成工作。但是,我发现的一件事是,诸如Cordova之类的框架运行包装在本机应用程序中的Web视图,当您尝试将其推送时可能会遇到一些明显的性能问题。使用实际本机组件并编译为本机代码的框架最终将更具响应性。但是,即使那样,您仍会发现它与本机代码不匹配的情况。例如,一年多以前,我参与了一个项目,从React Native开始。一切都很好,直到我们开始尝试通过地理位置和用户交互来制作一些实时地图动画。到那时,即使在全新设备上,我们也开始看到滞后和停顿。对于那个项目,我们最终忍不住要从纯本地语言开始。我们只是问了太多的框架。

当前,我正在使用将NativeScript与Vue结合使用的项目。而且,到目前为止,我对此还很头晕。像您一样,我也是VueJS的粉丝,主要是因为我喜欢Vuex和整体数据绑定的处理方式。肯定有一些学习上的曲线和范式可以吸引我的注意力,但是一周左右后,我开始大步向前。话虽这么说,我还没有真正使用复杂的动画来推动框架的发展。但这是一个成熟的框架,有充分的文档证明,并且拥有活跃的社区(我几乎立即就加入了Slack工作区)。我绝对喜欢这样一个事实:它对您应该使用/什么框架没有意见。香草JavaScript,React,Angular,Vue ...只是不在乎。

如果您完全担心在该项目上增加其他开发人员,那么将来肯定会有更多的人熟悉React Native。再说一次,任何值得付出代价的开发人员都应该能够在没有太大困难的情况下逐步建立新框架。如果您正在考虑使用NativeScript,建议您看一下Playground中的一些示例,并翻阅文档。我怀疑它会吸引您或排斥您。话虽这么说,我对那里的其他任何框架都没有任何抱怨。有些仅比某些应用更适合某些类型的应用。

祝你好运!

,

是的,NativeScript有自己的iOS / Android本机组件。它不是其他框架的包装。 Telerik从头开始构建它。它是一个自包含的生态系统,当前版本为6.x。因此,它已经存在了一段时间,并且正在积极地进行开发和维护(这不能保证它不会在某个时候消失)。

对于PWA之类的东西,可以选择Ionic或Flutter。今天早上,我通过StackShare偶然发现了一个新的叫做Quasar的,看起来很有趣(https://quasar.dev/)。但是实际上,您可以从用于构建移动应用程序(https://www.nativescript.org/blog/how-to-build-a-pwa-an-ios-app-and-an-android-app-from-one-codebase)的同一NativeScript代码库中构建PWA。因此似乎不乏工具,这很好,因为它为您提供了根据您的工作方式进行选择的选项。

,

我在这里遇到同样的问题。我的答案:

  1. 电容器,毫无疑问。
  2. NativeScript优于其他语言。纯本机代码,使您可以在angular web和mobile之间共享代码。我的选择。
  3. 您可以,但这取决于情况。对于一般用途(表格),任何方法都可以。我建议选择一个并尽可能坚持。
  4. 您与Angular(非常棒!)和电容器共享NativeScript代码。

由于我的项目性质,我想进入电容器行业:使用单一代码即可从Web和移动应用程序进行简单业务->简单的Webview就可以。

PS: 类星体 是您需要解决所有这些目标的唯一选择。如果您仅指网络和移动设备,那么大多数都可以使用,并且实际上取决于您的项目需求和偏好。

本文链接:https://www.f2er.com/3166612.html

大家都在问