关于跨平台技术选型的思考前端
在咱们进行技术架构和技术选型的时候,咱们常常犯一个错误就是,试图找一个完美的解决方案即:坑少、功能多。vue
可是,无数次惨痛经历仍然难以记住这个事实,就是,好的架构是须要迭代的。react
好比咱们团队选择vue(weex)而不是react(rn)主要是考虑到了当前状况和团队条件以及应用场景后作了一个艰难的权衡。weex
对于跨平台,自己就不存在完美的方案。不管是所有原生仍是weex再或者是rn都有使人心动的地方,但,也都有坑。架构
关键并非如何找到最好的方案,关键应该是如何驾驭这个方案,好比针对存在的坑,你如何找获得绕过坑的办法。app
好比。针对weex存在的坑。先不要草率地被网上的对于坑太多的情绪误导而放弃,而将注意力放在它是否能达到咱们的目标,我并不关心坑多坑少,我关系的是如何填坑,个人作法是寻找能把坑填上的高手和组织,经过创建weex大前端社群。将国内几个weex领域的大牛联合起来,帮我填坑。开发
RN的生态确实比weex大和成熟,可是对咱们不适合,缘由不单单是由于它更适合用react开发整个app而不是原生+业务模块的场景。而更在于咱们已经对vue很熟悉了,不太能承担得起转换国籍的成本。产品
说到底,架构和产品功能同样。也是须要不断迭代的。无论如今选择什么方案,可能随着业务变化和团队发展,后续都要根据状况调整甚至推到重来。要综合考虑现实人员、成本、业务需求。没有最优的,只有相对可行的方案。flutter
只要达到企业目标,实现了企业价值,就是好的架构。技术
对于跨平台前端的将来,如今无论采用什么技术,或许都是临时的措施。将来或许是属于flutter的。可是目前,我仍然选择weex。weex坑不少,可是我已经找到了填坑的办法。所以对于我来讲,就是好的架构方案。
当团队能力达到了新的高度。若是经费充裕,甚至能够回到原生开发。或者迁移到RN。或者使用前卫一点的flutter。
在考虑跨平台的时候不要忘了跨平台的目的。