Keke Yezi

Better Late Than Never

我是叶斌 (Kekeyezi) 就职国泰君安.


Coding & Game & 初级奶爸

iOS 跨平台方案看法

随着移动开发的发展,以及在中国有特色的环境下.近阶段对于跨平台的方案有一种越来越流行的趋势,因为不论从人力成本还是更新频率上线速度来看 跨平台方案都有一定的优势。 现在主流的跨平台方案分别是 H5 ReactNative Flutter。那么我就从这三个主流方案说一说自己的理解和看法。

H5

H5作为存在时间最久的跨平台方案目前也是各大公司作为跨平台方案的首选。但是由于其有一定的性能问题以及和原生体验上的差异让各大公司都在另寻出路。但是作为最为稳定的跨平台方案绝对当仁不让。毕竟时间久积累的各种框架,经验,人才数量在市场上都是有一定优势的。

ReactNative

俗称RN,15年4月份由FB开源的项目。我接触RN应该也是在那个时候,但是当时还是比较保守没有投入使用。

现在2019年了,技术也逐渐趋于成熟,京东,携程等大厂也基于RN进行了许多生产项目的实践,可以证明这项技术是有他的使用场景的。对于一些简单交互和展示的需求 这项技术真的有如神奇,热加载,跨平台,热更新都是让人向往的点。但是 —— 如果选用的场景不当带来的坑能够让人非常痛苦。

Flutter

后起之秀,基于更底层进行了跨平台方案。但是就iOS平台来说,类似自实现了一套UIKit的方式来说,UIKit积累了那么多年的东西岂是短时间能够超越的。个人对这项技术任然保持着观望状态。

总结一下:

技术方案没有银弹,想要方方面面都好目前是没有这样的技术的。合适的业务场景合适的需求 采用合适的方案才是技术选型的上上策。RN和Flutter 对于简单的展示类需求和简单交互不涉及平台特性的场景还是能够Cover的,但是一旦有诸如音视频,线程调度,动画等平台特性明显的可能不用才是明智之选。

写在最后:

Better Late Than Never ,愿我们都能跨出自己的第一步。

站在巨人的肩膀上,感谢前辈们的文章。

推荐资料

https://www.zhihu.com/question/307298908/answer/569471390

https://zhuanlan.zhihu.com/p/64348609

https://www.zhihu.com/question/307298908

https://www.zhihu.com/question/50156415

https://mp.weixin.qq.com/s/kCa9qVBkvYRSAGmxyInIPQ

最近的文章

iOS App Optimization series 4 耗时统计

对于耗时统计作用最有价值的莫过于以下几点 启动时间优化关于启动时间优化之前有文章分析过,如果没有心情细看可以直接使用最终方案。起点时间+ (BOOL)processInfoForPID:(int)pid procInfo:(struct kinfo_proc*)procInfo{ int cmd[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PID, pid}; size_t size = sizeof(*procInfo); return ...…

优化继续阅读
更早的文章

iOS 代码质量随想

借着今天公司有分享设计模式 简单记录下自己对“高”质量代码和设计模式的理解。众所周知设计模式有六大核心的思想原则。引用一段百度百科的介绍 传送门为什么要提倡“Design Pattern呢?根本原因是为了代码复用,增加可维护性。那么怎么才能实现代码复用呢?面向对象有几个原则:单一职责原则 (Single Responsiblity Principle SRP)开闭原则(Open Closed Principle,OCP)、里氏代换原则(Liskov Substitution Princip...…

代码质量继续阅读