创业公司APP开发用原生的好还是React Native? 举报 理由 举报 取消 情况说明:1、我们是一个创业项目,要开发APP,由于不懂技术,请大侠们帮忙回复一下,到底哪个技术更适合创业公司?因为项目小需求可能在制作过程中有变化。2、是不是React Native一套程序就可以了,不用分开开发IOS和Andirod?跪谢 2017年7月10日 6 条回复 1052 次浏览 Native,React,公司,创业
回复 ( 6 )
iOS出身,最近搞了一会react native(后面全部简称rn)。
创业公司,你不懂技术,意思是想帮技术人员决定 他们用什么技术,从这个角度出发就是不对的。专业的事情应该让专业的人决定,盲目在知乎随意问问,这是不对的。对于不同的应用场景,不同的技术有不同的长处和短处,不可一概而论。就不多说了。
认真结合自己经验,说一说。rn目前还在发展,坑还有很多,不是说懂js就可以写rn了,你不懂原生,连环境也搭不好。你需要懂js和原生的人,这种人不是那么好找的。如果从头培养技术人员,相信创业公司也没那资本。
Rn,也不是说只写一套代码就可以跑两个平台。它的理念是,学一次,到处写,不是到处运行。退一万步,你侥幸找到了这样的人,写出了app,这帮技术人员离职了,目前来说,还是比较难找到合适的人选替代的。
不对之处,请各位同行指点。
刚好就是公司的早期的app的核心程序员,简约给你回答一下。
1 你问什么app技术适合你们,很明显React Native(以下简称RN)是比原生开发技术适合的,第一个原因是早期的app寻求的是快速验证,RN的热更新特性是适合这个的,在iOS是能绕过APPStore的审核。第二个原因是RN的开发效率比原生的高。从热更新方面考虑,因为APPStore的审核周期太长,目前需要RN的是iOS,Android的话不是特别热切的需要,因为Android的审核周期短而且随时可以强制提示更新。
但是,有一个很重要的前提,RN是facebook公司15年年初的时候发布的。你现在去招app开发人员,我相信大部分来应聘的一两年经验的app开发人员是不懂的,具体原因是技术普及至少需要一年。另外RN是在原生app开发技术的基础上的一种技术方案,并非全新的技术。所以你等于在招原来开发水平的程度上再加一个筛选条件。但是现在这个点,我并不排除你刚好招到一个三年经验以上的刚好懂React Native的。那就恭喜了。但我觉得这个概率相对比较小。
2 关于是否不用分开开发IOS和Andirod。 这个肯定是分开的,一个RN的工程实质上包含三部分,一部分是js代码,一部分是安卓代码和工程配置,另一部分是ios代码和工程配置。重点就在于js的部分相当于你想要的功能代码,它确实是可以编译出一个安卓apk包和一个iOS的ipa包的。但是这样一个横跨三个语言的工程,依然需要两个端各招至少一个开发。而且他们都需要进行RN的原生桥接和学习RN开发。如果其中一个端的开发不懂RN,他就不能享用RN的好处了(热部署,开发效率快)。
综上,你的痛点主要是需求变更和快速上线,所以iOS尽可能的找到一个懂RN的,安卓就不强制是比较平衡的方案。
1. 不懂技术的话,用原生还是React Native都不行。懂技术的话,都行。
2. 用React Native的话,还是会有一个ios,一个安卓,只不过大概是,80%公用代码,10%ios专用代码,10%安卓专用代码。
用你团队成员更擅长的技术
RN属于轻量级的,不重度依赖sdk或者硬件可以考虑RN,一套业务逻辑android和iOS可以用,web的还可以用ReactJs实现,爽
React Native 确切的说从 2015 年开始在国内火起来的。墙外开花,墙内结果,国外技术研发,国内炒得火热。阿里天猫在这一方面走的比较靠前,但这时候 Android 部分还未推出,仅有 iOS。当时我们是拿二手车的列表页进行的试验,主要测试用 RN 实现的列表页和用 Native 实现的列表页在性能上的差别。
React Native 的理念是比较好的,既能拥有 Native 的良好用户体验,又能具备 Web 的快速发布和迭代的功能。如果 Android 后续能很好推出,还能实现跨平台的“一处编写,多处运行”的效果。无论集成与否,后续要持续关注,保持前沿技术的敏感性。对应 ListView 性能问题,RN 官方一直没有一个很好的解决方案,我们最近也在做一些调研和组件的重新封装,期望能从根本上解决这个问题。http://sep9.cn/m0t0ga