React Native的可行性

时间:2018-06-21 11:26:03

标签: android react-native

我们是一个由5名成员组成的团队,其中一个人具有Android App Development的基本知识。我们正计划开发一个功能类似于Uber的应用程序。以下是我们要记住的一些事情:

  • 通过react native构建一个应用程序,我们关心的是React Native中Maps和其他API的可用性。
  • 或为IOS和Android平台开发本机应用程序。

考虑到我们是应用程序开发的初学者,哪种情况更好?

3 个答案:

答案 0 :(得分:3)

作为既编写本机iOS并响应本机应用程序的人,我可以说以下话:

  • react native在“ net”开发时间方面表现出色。 > 90%的代码是跨平台的,并且每次更改后都无需构建项目(这是IMO移动开发的最大难题之一)
  • 但是,我在当前的RN项目中所做的大部分工作都是解决技术问题,不同软件包的兼容性以及重大更改。整个生态系统不那么成熟,开发工具不如人意,文件方式也更少。

RN适合我的特定项目(相对简单),它使我能够在了解Java \ Kotlin的情况下为两个平台编写代码。在RN中开始更复杂的项目之前,我会三思而后行。

写了上面提到的react-native-maps的Airbnb顺便说一句,最近宣布它们正在淘汰RN开发:https://medium.com/airbnb-engineering/sunsetting-react-native-1868ba28e30a

编辑:在过去的9个月中,我发现自己在RN中使用了完整的生产应用程序,这是我目前的观点:

  • RN不断发展。 Facebook团队正在做令人难以置信的工作,以使平台更好。
  • 可以使用打字稿来驯服Javascript,并使用设计模式(Im使用redux-saga)
  • 我们为FE&BE使用一个代码库和存储库:这是IMO的最大优势。整个团队都使用相同的语言,我们可以互相检查代码并协助完成任务。
  • 可能需要进行一些黑客操作,但我还没有遇到无法实现RN产品所需的某些情况的情况。
  • RN唯一真正的缺点是性能。根据设计,RN的性能不如本机应用程序。对于许多应用程序,两者的差异可以忽略不计,但是如果您的应用程序非常重视动画,则需要考虑这一点。 FB团队正在努力进行一项重大的架构更改,以解决此问题。 (有传言说内部使用的RN FB版本性能更高)。

答案 1 :(得分:2)

如果开发工作量/成本对组织而言无关紧要,请继续进行选择2:使用swift和JAVA开发本机iOS和Android。本机开发可以使用完整的移动开发功能。它在UI设计,性能,可伸缩性和许多其他方面非常丰富。如果您陷入困境,则可以在Internet上获得大量支持和教程。

选项1,在react native上进行开发:如果大多数开发人员都是Web开发,Java脚本和React JS方面的专家,请继续。它需要较少的开发工作,因为一个项目将同时支持android和ios。在此选项中,您仍然需要本机应用程序开发知识来开发自定义,复杂的视图并导出到React本机。

通过Internet浏览以了解差异。

答案 2 :(得分:0)

不用担心,因为React-native-maps是用于地图的很好的npm模块

您可以找到Github  文档在这里

它非常适用于android和ios

更多答案在这里:Which is best map to use on react native

但是,就我个人而言,我喜欢本地应用程序,这是最好的。