找回密码
 会员注册
查看: 26|回复: 0

开源|Fair下发产物-布局DSL生成原理

[复制链接]

2万

主题

0

回帖

6万

积分

超级版主

积分
64122
发表于 2024-9-19 23:59:58 | 显示全部楼层 |阅读模式
FFair2.0专题系列NO.4 Fair下发产物-布局DSL生成原理● 项目名称:Fair2.0● Github地址:https://github.com/wuba/fair● 项目简介:Fair是为Flutter设计的动态化框架,可以通过FairCompiler工具对Dart源文件的转化,使项目获得动态更新Widget的能力。Fair2.0是为了解决Fair1.0版本的“逻辑动态化”能力不足。Fair2.0连载公告关于Fair2.0详细的设计和原理介绍,请关注后续文章,我们会以连载的方式,逐步公开架构设计原理。文章开放频率为每周2篇,分别在周二和周四,敬请关注!《开源公告|Fair2.0逻辑动态化开源了!》《Fair逻辑动态化架构设计与实现》《Fair逻辑动态化通信实现》《Fair逻辑语法糖设计与实现》《Fair下发产物-逻辑JS生成原理》《Fair2.0在安居拍房App落地实践》《Fair热更新设计与实现》《Flutter动态化项目评测》大家都知道,Flutter在release环境是以AOT模式运行的,这就决定了我们要做动态化的话无法简单的通过动态下发dart代码执行的。根据Fair团队的前期调研,我们对布局动态化和逻辑动态化的实现采用了两套不同的实现方案,对于布局部分,我们在解析dart源文件之后生成DSL产物下发,然后在端上解析DSL构建布局的方式,逻辑动态化的部分,我们采用的是dart源码转js下发的方式,具体原因,可参考前文《Fair逻辑动态化架构设计与实现》,此处不再详述。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2024-12-26 13:09 , Processed in 1.505717 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表