闲鱼研发框架应用和探索
如果无法正常显示,请先停止浏览器的去广告插件。
1. 闲⻥鱼研发框架应用用和探索
讲师:梁梁治峰(花名:玄玄川)
2. 自自我介绍
梁梁治峰(玄玄川)
阿里里里巴巴 – 闲⻥鱼 –无无线技术专家
现任阿里里里巴巴闲⻥鱼买家链路路客户端负责人人,负责闲⻥鱼客户端主
链路路架构升级,主导闲⻥鱼flutter化的落地和研发框架演进。
3. • 闲⻥鱼Flutter 研发框架使用用现状
• Flutter 研发框架下一一体化模式
• Flutter 研发框架下动态能力力力
• Flutter 研发框架下互动能力力力
• 后续规划和展望
4. 闲⻥鱼Flutter研发框架使用用现状
FishRedux
重逻辑 一一体化
重界面面 动态模版
重特效 互动引擎
5. Flutter 研发框架下一一体化模式
6. 一一体化模式
Android
Client
Service
DoMain
iOS
H5
UI
逻辑
协作
7. 一一体化模式
状态
展示
状态
逻辑
逻辑
领域
Action
展示
逻辑
领域
(Action) => Action
副作用用
副作用用
传统
新型
Client
Server
FaaS
8. 一一体化模式
Client
Flutter
UI
State
LogicEngine
Loacl
Logic
Protocol
Diff
Nexus
Nexus 是一一套一一体化C/S 协议
解决逻辑归一一问题
面面向接口口
Nexus Protocol
类型安全 高高性能
Action
Action|State|diff
高高于API
业务逻辑
VM服务
Saker
日日志/监控
限流/熔断
应用用服务
FaaS 容器器
应用用基础服务
平台相关性
Dart For FaaS
Gaia
通信协议
BaaS
HSF
中间件
逻辑内聚
9. 一一体化模式
状态复杂
状态变化多
云端交互多
UseGuarantee Action
ChangeAddress Action
UserRedPacket Action
Init Action
CretaOrder Action
云端模型统一一
屏蔽协议
逻辑归一一
代码量量减少
业务闭环
10. Flutter 研发框架下动态能力力力
11. 动态性
逻辑动态性
电商业务具有强运营强时效性特性
UI动态性
12. 动态模版
DX平台编辑模版
组件渲染
编译生生成二二进制文文
件
数据解析绑定
事件/表达式
注册
动态模板化是集团内较为成熟的一一套基于Native技术的模板化方方案,专注于 UI 模板渲染
生生成模板下载链接
模板下载解压
13. 核心心问题-Layout
UI
=
Decoration
+
Layout
+
Content
Flutter 约束特点
RenderBox
RenderSliver
共性
Min Max
Flex
Row
Stack
动态模版
SliverGrid
特性
match parent
wrap content
• 尽可能大大的约束
• 跟随内容大大小小的约束
描述上样式和布局彻底分离
量量行行行描述
感性描述
14. 布局表达
最大大值估算
实际值
15. 业务效果
16. 性能参考
FPS平均值在55以上
17. 性能下一一步探索
FPS
55
60
高高级控件特性
Flutter 原生生
DX
18. Flutter 研发框架下互动能力力力
19. 背景和现状
๏ UI 与游戏引擎的边界
单边
UI
不不互通
Canvas
传统游戏引擎
Flutter
App
Skia
๏用用游戏化的方方式创造更更有表现力力力的交互体验,创造新的业务玩法和价值
20. 核心心问题-融合
应用用
Flame
GameObject
GameObjectWidget
GameObjectElement
GameObjectRenderObject
UI
Game
RenderObject
GameObject->RenderObject
• 游戏系统不完善
• 缺少局部刷新支持
• 缺少GUI系统
• 动画支持格式少
Paint
Layout
HitTest
21. Candy 整体设计
GameObject
GameObjectWidget
GameObjectElement
GameObjectRenderObject
๏ 架构设计:按照ECS标准
游戏行行行业开发者
๏ 接又设计:对齐集团互动EVA
App应用用开发者 ๏ 应用能力:融入Flutter绘制体系
UED视觉设计者 ๏ 扩展能力:游戏子系统化能力补充
Candy——符合ECS标准的与Flutter高高度融合的原生生开发高高性能互动开发引擎
22. 效果
• 按游戏模式开发逻辑 • 动画能力封装为Widget
• Flutter UI无缝插入游戏
场景 • 按Flutter模式开发逻辑
• 游戏最终以Widget形式
插入Flutter页面
• 动画Widget无缝插入
23. 效果-⻣骨骼
DragonBones
24. 效果-调试
25. 性能参考
26. 后续规划和展望
27. 互动
编排
=
Candy
Nexus
SSR
布局
绘制
Dart
=
DX
云端一一体化研发
Flutter
+
Serverless
Fass
28. 【淘系技术】微信公众号
扫码获取本期ppt内容及回放
【闲⻥鱼技术】微信公众号
加入入我们