FA模型适用于熟悉Web前端技术的开发者,开发轻量的、偏重于UI展示类的应用。在应用使用过程中,我们发现这种模型存在一定的适用范围:通过固定文件入口和匿名对象的方式指定组件,虽然对Web开发者比较友好,但是开发者无法进行派生,不利于扩展能力。Service和Data组件,由于没有界面,用户不可感知,容易被恶意应用滥用,引入关联启动等问题。每个应用组件的实例运行在独立的虚拟机实例中,会带来较多的内存开销,并导致组件之间无法共享状态。为了支持大型应用面向对象的范式开发,在遵循"若无必要,勿增实体"原则下,从下面三点设计新的Stage模型:应用的能力与系统总体性能/功耗的平衡原生支持组件级的迁移和协同支持多设备形态和多窗口形态FA模型的PageAbility、ServiceAbility、DataAbility不等同于MVC,三类Ability分别是承载UI、后台服务和后台数据组件,无主次之分,但是某种程度上MVC中View背后的PageAbility既要完成ui的工作又要做controller的活。Stage模型是以UI为主的开发模型,UIAbility组件是一种包含UI界面的应用组件,主要用于和用户交互,其它对系统或三方提供能力都是通过扩展Extension实现。Extension都是基于某个特定场景,由系统统一调度管理,相比FA模型,达到后台进程环境从无序到有序的状态。参考链接应用模型
FA模型适用于熟悉Web前端技术的开发者,开发轻量的、偏重于UI展示类的应用。在应用使用过程中,我们发现这种模型存在一定的适用范围:
为了支持大型应用面向对象的范式开发,在遵循"若无必要,勿增实体"原则下,从下面三点设计新的Stage模型:
FA模型的PageAbility、ServiceAbility、DataAbility不等同于MVC,三类Ability分别是承载UI、后台服务和后台数据组件,无主次之分,但是某种程度上MVC中View背后的PageAbility既要完成ui的工作又要做controller的活。
Stage模型是以UI为主的开发模型,UIAbility组件是一种包含UI界面的应用组件,主要用于和用户交互,其它对系统或三方提供能力都是通过扩展Extension实现。Extension都是基于某个特定场景,由系统统一调度管理,相比FA模型,达到后台进程环境从无序到有序的状态。
参考链接
应用模型