@thevangelist:你提出的问题非常好,当我们开始编写应用程序时,所有移动开发人员都面临同样的问题。今天,市场上有多种开源框架,它们试图以不同的方式解决相同的问题。
根据我的研究和经验,我想推荐以下我们在构建移动应用程序时可以考虑的技术。
视图:视图是任何移动应用程序的重要组成部分。当我们开始构建 UI/UX 时,我们还考虑了它的平台设计原则。考虑到这些点,我想同样推荐React Native。
React Native:它是 Facebook 和 Instagram 开发的用于创建原生移动应用程序的 JavaScript 库。它允许我们使用 JSX(一种已知的 HTML 类似代码)和 JavaScript 编写 iOS 和 Android 应用程序。它基于“一次学习,随处编写”的方法。
优点
缺点
代码抽象导致错误和内存泄漏
没有 React Native 提供的 API 就无法工作,从技术上讲,没有像经典混合移动应用程序那样的回退
在创建适当的本机应用程序时,开发人员将在性能调整方面拥有更多权力和控制权
React Native 仍然是一个新框架,所以我们无法预测可能的问题和缺点
这些缺点可以忽略不计,尤其是当我们考虑到 React Native 每天都在为越来越多的本地应用程序提供支持时。
传输中的数据:如果您的应用程序从 Web 服务同步数据,那么市场上有多种框架可以让我们的工作更轻松。请在下面找到一些最流行的 JavaScript RESTful 框架:
ACTIONHERO , StrongLoop
静态数据:您还需要离线存储同步数据。由于我们在 JavaScript 中没有直接支持原生 SQLite,因此我们需要使用一些 React Native SQLite 插件。请在市场上找到以下插件:
几乎,andpor,jbrodriguez,ramsundark5,remobile
对于Transit/Data at Rest 的数据,我想推荐在所有主要平台(Android、iOS、Windows)上都可用的Siminov 框架。它还支持React Native、Cordova、Xamarin等混合技术。
优点
- 适用于所有主要平台(Android、iOS 和 Windows)
- 易于配置,它提供标准的基于 xml 的结构,使用我们可以轻松配置我们的应用程序数据库
- 它也允许开发人员将 ORM 与远程 RESTFul Web 服务绑定
- 还支持所有平台上的SQLCipher
缺点
- 缺乏社区:最近他们在各大平台上都推出了他们的产品,使用它的人并不多。
- 由于配置是基于 XML 结构的,这对我来说看起来很旧。但根据他们的文档,它支持所有主要平台
算法:我找到了这个与算法相关的链接nurlybayevaAMS9,希望这可以帮助你。