【问题标题】:React Native vs Swift/Objective-C/Java NativeReact Native vs Swift/Objective-C/Java Native
【发布时间】:2017-06-18 00:13:43
【问题描述】:

我正在为一家金融科技公司开发一个新项目,我的任务是研究是否应该使用 React Native 或原生 Swift/Objective-C/Java 来开发我们的移动应用程序开发技术和战略。

我对此进行了大量研究,并阅读了许多与 React Native 相关的案例研究,但我仍然觉得我目前还不足以做出明智的决定。

广泛的应用功能将包括:

  • 账户余额和报表等数据相关功能(非常简单)
  • 用户身份证件和自拍照的图像捕获
  • 采集生物特征数据
  • 推送通知

其中一些非常标准且简单,但其中一些需要应用使用低级设备功能和/或使用第 3 方 Android 和 iOS SDK。

所以,在制定移动开发策略的决策方面,我能否请您根据您最近的经验,谈谈考虑 React Native 而不是原生 Swift/Objective-C/Java 开发的原因?根据上面列出的计划功能(包括为什么坚持使用本机语言/平台可能要好得多的原因)。

【问题讨论】:

    标签: react-native mobile-application


    【解决方案1】:

    根据自己的经验,当您需要快速开发和迭代时,React Native 是大多数应用程序的不错选择。这通常意味着为客户开发会更便宜。

    查看功能列表,我看不到任何在 RN 中无法完成的功能。迟早你将不得不深入研究原生代码,通常是用 JS 桥接原生模块。我已经多次这样做了,这并不难,RN 网站上的文档很有帮助。

    请注意,您肯定会遇到愚蠢的错误,您必须找到解决方法。至少半年前我在做 RN app 的时候多次出现这种情况,现在可能更稳定了。

    另外我相信这真的取决于潜在应用用户的设备是什么。我从来没有为 Android 开发过,但从其他开发者那里听说,在中级 Android 设备上,RN 运行速度要慢得多,这应该从一开始就进行测试。

    【讨论】:

      【解决方案2】:

      React Native 背后有一个非常好的和诱人的想法,比如“为包括 Web 在内的不同平台提供统一且几乎完全可共享的代码库”。但根据我的经验(不是那么广泛,但仍然如此),现实有点不同——在某些时候你肯定会遇到一些原生代码的问题,如果你体验过 Swift/Objective-C/Java 那就太好了团队中的开发人员来处理它。不要相信“你所需要的只是一个 React 前端开发人员”的承诺。在我看来,React Native 平台本身更像是一个神奇的黑匣子,我用一个命令运行它,不知道里面是什么以及它实际上是如何工作的。你必须至少了解 Xcode 和 Android 模拟器,即使 Facebook 试图尽可能地向你隐藏这方面。

      TL;DR 在我看来,如果你真的想尝试 React Native 来开发比 TodoMVC 更复杂的东西,那么你至少需要 3 个开发人员:Web (JavaScript/React)、iOS (Swift/Objective-C) 和 Android (爪哇)。或者只有一个超级英雄。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-01-03
        • 1970-01-01
        • 2019-03-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-06
        • 2019-12-12
        相关资源
        最近更新 更多