美文网首页我爱编程
Ionic 2 , React Native, NativeSc

Ionic 2 , React Native, NativeSc

作者: goforu | 来源:发表于2017-11-14 22:22 被阅读0次

    前言

    最近公司在探索发展新的mobile领域。借此机会,分别测试对比了下主流跨平台框架的优劣。到目前为止React Native 和 Ionic 2, NativeScript 都各写了小Demo。

    Ionic 2

    Ionic 2完全重写了Ionic 1的构架。基于Angular 2的语法,封装了各种手机适用的组件,非常适合快速迭代,追求速度的产品。

    优点:
    • 几乎100%跨平台可复用代码。只需写一次,哪里都能跑。
    • 开发几乎无需手机, 大多数功能浏览器都可以调试搞定。
    • TypeScript语法,代码简洁高效。
    • 统一风格的组件,可以快速开发。
    缺点:
    • 由于是基于WebView的混合APP,在运行效率上与原生还是有差距。
    • 各个平台上的布局和操作设置都是一样,没有根据平台习惯调整。
    • 在调用设备传感器或需要原生代码的API时,只能靠插件。如果这种调用太多,效率会比较低。如果自己写插件需要懂各个平台原生代码。
    • 应用布局风格上自由度较小。

    React Native

    Facebook 旗下产品, 从React.js框架衍生而来。语法和React.js结构相似。适合有React.js基础的开发者或是追求APP运行效率的产品。

    优点:
    • 三大框架中运行效率最高。
    • 风格、布局自由度高。
    • 可以在原生APP项目的基础上用React Native继续扩展。
    • 可以通过无线局域网的方式调试真机。
    缺点:
    • 15%的代码需要根据平台调整。需要了解一些各个平台的语言
    • 对比Ionic封装的统一风格的组件,需要更多的时间自行设计。
    • 最初为IOS设计,对Android平台支持还不太完善,可能需要更多的代码。

    NativeScript

    我感觉最好,最有潜力的框架。100%可以用前端代码编写,框架内自动编译成原生代码。让我最为吃惊的是,他可以用js直接编写java代码。因为我在项目中加入了第三方jar包,框架内可以js无缝对接。但最后我还是放弃了此框架,因为Debug js封装的java代码太麻烦了,特别是当引入第三方jar包的时候。希望后续官方能够改善!

    优点:

    -100%前端代码编写
    -可选择集成angularjs框架,方便代码迁移
    -原生封装组件,运行效率高
    -以js封装原生代码,可与第三方原生lib无缝对接

    缺点:

    -界面布局、组件运用需要重新学习,成本较高
    -调试原生代码困难
    -生成的安装文件较大
    -开发者少,网上解决方案稀缺

    相关文章

      网友评论

        本文标题:Ionic 2 , React Native, NativeSc

        本文链接:https://www.haomeiwen.com/subject/nfcuhxtx.html