码迷,mamicode.com
首页 > Web开发 > 详细

原生,html5,混合Hybird

时间:2016-07-25 00:01:32      阅读:660      评论:0      收藏:0      [点我收藏+]

标签:

 

 

  • app开发的三种模式:原生,html5,混合Hybird
    • Native APP:就是所说的原生开发,Native Code编程,代码编译之后以2进制或者字节码的形式运行在OS上,直接调用OS的Device API;
    • Web APP,以HTML+JS+CSS等WEB技术编程,代码运行在浏览器中,通过浏览器来调用Device API(取决于HTML5未来的支持能力):
    • Hybrid APP,就是混合开发。部分代码以WEB技术编程,部分代码由某些Native Container承担(例如PhonGAP插件,BAE插件),其目的是在HTML5尚未完全支持Device API和Network API的目前阶段,承担这部分职责。常用的技术就是webview+html5
    • React Native 是 Facebook 推出的一个用 Java 语言就能同时编写 ios,android,以及后台的一项技术。用React Native 就是真正意义上的全栈,一个项目从头到尾可以一个人搞定
    • React Native的优势:
      • 它可以做到实时热更新(就像网页一样,改了一个字体,随时可上线)
      • 相对Hybird app或者Webapp:
        • 不用Webview,彻底摆脱了Webview让人不爽的交互和性能问题
        • 有较强的扩展性,这是因为Native端提供的是基本控件,JS可以自由组合使用
        • 可以直接使用Native原生的「牛逼」动画(在FB Group这个app里面,面板滑出带一点果冻弹动,面板基于某个点展开这种动画随处可见,这种动画用Native code来做小菜一碟,但是用Web来做就难上加难)。
      • 相对于Native app:
        • 可以通过更新远端JS,直接更新app,不过这快成为各家大型Native app的标配了…
      • 劣势
        • 扩展性仍然远远不如web,也远远不如直接写Native code(这个不用废话解释了吧)
        • 从Native到Web,要做很多概念转换,势必造成双方都要妥协。最终web要用一套CSS的阉割版,Native要费劲地把这个阉割版转换成native原生的表达方式(比如iOS的Constraint\origin\Center等属性),两边都会不爽

原生,html5,混合Hybird

标签:

原文地址:http://www.cnblogs.com/hanfengs/p/5701925.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!