当前位置: 首页>>开发技术>>APP原生开发与H5混合开发的选择
APP原生开发与H5混合开发的选择

         尚武科技科技已经从事app的开发工作五年的时间,我们经历过各种各样的开发模式开发模型,很多客户都很关心我们的开发模式,问是不是我们从底层开发,首先应该明确我们具备app底层开发的能力与实力。但是是否,采用底层开发或采用什么样的开发模式?是根据项目的实际情况来确定的。举一个例子,例如我们要进行,用户量级超百万的应用开发时,一定选用的是底层开发,因为这样开发的灵活性以及性能是最高的,而针对一些量级并不要求很高,但是同时要推出安卓与苹果两个版本的app,则没有必要,进行底层开发。因为相对来讲,开发周期和时间都会变长,也要投入两个开发团队,而且开发费用会大大增加。现在手机运算资源过剩的前提下,用混合模式开发,并不会造成用户体验的不好或者说运行效率低,反而开发成本和性价比都有很大提升。

       但是是不是两种开发模式也有区别呢?是的,那么我就说一下主要的区别。


       1、动画效果的优化,在app中有何中动画的形式,比如侧边栏菜单的滑入滑出、响应动画、页面切换之间的过场等等。在H5之下的众多实现方法都没有办法达到纯原生的性能。但是效果基本是相同的,但是开发的工作投入原生又要高深多。css3动画、javascript动画或者原生动画。css3动画非常的消耗性能,如我们有的时候发现运行css3动画的时候cpu封神会转起来,我们应该尽量避免大批量使用css3动画。比如在一个新页面的载入上,调用底层动画要考虑,一是本身资源页面的渲染问题,另一个是远程数据的获取。要保证这些动画能够很快的响应,避免大量的css页面会导致渲染卡顿,尚武科技为了解决这些性能问题通常会用到预加载或模拟动画。


       2、获取服务端数据的再增强,H5里的数据获取都是在资源页面上异步完成的,因为只有这样才能让这些资源页面完成预加载或者渲染。解决这个问题,H5APP是要有话大规模数据的页面,用MVVM的方式,基于MVVM的H5APP,相对来说它们获取数据和更新数据的方式更敏捷更科学。


       3、页面切换更讲究。尚武科技的APP开发会用到几种不错的实现方式,比如预加载和模拟动画,甚至有批量的预加载,批量的截图模拟动画等等,更多的缓存页面信息,在跳转到响应的子页面时缓存这些子页面的下级页面资源,从而提升体验。H5APP的框架里也已经越来越完善了。MVVM框架,要考虑到在页面生存周期结束时它们的控制器/页面资源是否得到释放,规模较小的商业APP都可以得到解决,但是如果客户想用纯H5来开发大型APP,我们也是持保留意见的。

     

       4、Android/iOS的区别,我么要纠正一个误区,很多人都说纯H5 APP一次编写就能编译Android/iOS两种不同的APP,大大降低了成本。这个成本的降低是在开发非诚有经验的基础上面才能实现的。举一个例子,Android和iOS在返回上一页的处理方式上就有明显的区别,iOS的顶部bar在全屏下怎样处理,Android机器出现smart bar怎样处理页面的布局,只有成熟的开发团队和公司在很好的经验前提下才能很好的解决这样的问题。

       现在做H5混合APP开发的公司很多,但是能真正做到完美开发的并不是很多,因为没有很多的经验积累去解决这些实际问题,这几个是我在做这些APP时考虑最多的问题。当然大家大谈H5 APP时都是快速开发、低成本、多平台等等,但我却觉得它和很多APP开发方式相比有一个不同之处——图文混合的排版。正是这些复杂多变的CSS样式消耗了性能,但是它带来了排版的多样性,能够细致到每一个字宽行高和风格的像素级处理,才是H5的优异之处。任何事情的发展与选择都需要一个真正适合的模式的选择和确定,我们希望我们的客户都能选择适合自己的模式,开发出高品质的app产品。


推荐阅读
  • 石家庄APP制作:软件app开发

    1:根据公司的经验履历挑选在这里建议优先寻找经验履历较深的app开发公司,不要因为贪图便宜选择较为年轻,经验

  • APP的开发价格是多少?

    APP的开发价格是根据不是一概而论的,但是首先要知道,费用较之网站开发和微信小程序的开发要高出一些,首先你

  • APP开发的时间和周期

    APP开发的时间确定要根据实际需求确定,或者说根据复杂的程度确定。我们需要你了解开发的阶段,一般的APP的开