我正在为一家金融科技公司做一个新项目,我的任务是研究我们应该使用React Native还是Native Swift/Objective-C/Java来开发future 的移动应用技术和策略.

我已经对此做了大量研究,并阅读了许多与React Native相关的 case 研究,但我仍然觉得我还没有足够的信息来做出明智的决定.

广泛的应用程序功能将包括以下内容:

  • 与数据相关的功能,如账户余额和对账单(非常简单)
  • 身份文件的图像捕获和用户的自拍
  • 捕获生物特征数据
  • 提醒推送

其中一些是相当标准和简单的,但其中一些要求应用程序使用低级设备功能和/或使用第三方Android和iOS SDK.

因此,在制定移动发展战略方面,我能否请您根据最近的经验提供意见,考虑到上面列出的计划功能考虑本地SWIFT/Objul-C/java开发的原生react 的原因(包括为什么可以更好地坚持本机语言/平台).

推荐答案

React Native有一个非常好且诱人的 idea ,听起来像是"针对包括Web在内的不同平台的统一且几乎完全可共享的代码库".但从我的经验来看(虽然不太广泛,但仍然如此),现实是有点不同的——在某个时候,你肯定会遇到一些关于本机代码的问题,如果你的团队中有经验的Swift/Objective-C/Java开发人员来处理它,那将是非常好的.不要相信"你所需要的只是一个前端开发人员"的promise .React原生平台在我看来更像是一个神奇的黑匣子,我用一个命令运行它,却不知道里面是什么以及它实际上是如何工作的.你必须至少了解一些关于Xcode和Android Emulator的信息,即使Facebook正试图尽可能地向你隐瞒这方面的信息.

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

React-native相关问答推荐

莫迪德不会停留在屏幕中央

哪个版本的@stripe/stripe-react-native 模块支持 react native 0.62.0 typscript 模板?

使用下拉菜单时react 本机react-native-dropdown-select-list,它会将下面的项目向下移动.如何阻止这种情况发生

如何在 navigation.js 文件中的 react-navigation 中当前路由名称?

react-native 签名 [AppName]Tests 需要开发团队 ios

如何在获取请求中传递 POST 参数?

React-Native 按钮居中对齐

submit提交后如何让 React Native TextInput 保持焦点?

React Native 无法读取 index.android.delta

如何解决此错误您可能需要适当的加载程序来处理此文件类型

redux saga 的delay延迟功能不起作用

Error when running watchman

试图注册两个具有相同名称 ProgressBarAndroid 的视图

错误:无法解析模块`buffer`

将图标添加到drawer抽屉react-navigation v5

是否可以将 Image.getSize 与静态图像文件一起使用?

加载远程图像失败后加载本map像

ENOENT: no such file or directory, 打开 'android/app/src/main/assets/index.android.bundle'

React Native 发送短信

无法解析模块react-native-reanimated