跨平台高手必修课--Flutter动态化解决方案实战
核心代码,注释必读
// download:
3w ukoou com
Flutter介绍 lutter 简化了为它支持的六个平台上的应用程序创建一致、具有吸引力的 UI 的过程。
因为 Flutter 是一个跨平台的开发框架,所以我们先把它和原生开发做个对比。然后,我们可以突出显示 Flutter 独有的功能。
原生应用程序开发与跨平台应用程序开发的比较
为一个特定平台(例如 iOS)编写应用程序称为原生应用程序开发。反之,跨平台应用程序开发则是使用单个代码库为多个平台构建应用程序。
原生应用程序开发
由于开发人员在原生应用程序开发中为特定平台编写代码,因此他们可以完全访问本机设备功能。与跨平台应用程序开发相比,这通常会带来更高的性能和速度。
另一方面,如果您想在多个平台上启动应用程序,原生应用程序开发需要更多的代码和更多的开发人员。除了这些费用之外,原生应用程序开发还可能使在不同平台上同时启动并获得一致的用户体验变得更加困难。这时就需要像 Flutter 这样的跨平台应用程序开发框架。
跨平台应用程序开发
跨平台应用程序开发允许开发人员使用一种编程语言和一个代码库来构建适用于多个平台的应用程序。如果您要为多个平台发布应用程序,那么相较于原生应用程序开发,跨平台应用程序开发的成本更低、耗时更少。
此流程还允许开发人员为跨平台的用户创建更一致的体验。
与原生应用程序开发相比,这种方法可能存在一些缺点,包括对原生设备功能的访问受限。但是,Flutter 具有使跨平台应用程序开发更加顺畅和高性能的特性。
跨平台 - Flutter动态化解决方案
方案一:JavaScript是最好的语言 主要思路:利用Flutter做渲染,开发使用JavaScript,逻辑层通过V8/JSCore解释运行。代表框架是腾讯的MXFlutter。这个框架是开源的,非常值得推荐。
方案三:布局,逻辑,一把梭 主要思路:与方案一最主要的区别是,逻辑层也是使用Dart,增加了一层语法解析和运行时。有一个代表,美团的MTFlutter,然而没有开源动向,无从考察更多。
方案二:DSL + JS 主要思路:基于模板实现动态化,主要布局层采用Dart转DSL的方式,逻辑层使用JS。