基于 serverless 的低代码平台实践
如果无法正常显示,请先停止浏览器的去广告插件。
1. 基于 Serverless 的低代码实践
朱展 腾讯云微搭 前端负责人
2. 1. 为什么要低代码 / Serverles
3. 微搭低代码平台开发实践
目录
2. 低代码平台及架构简介
3. 开发安全靠谱应用的最佳方式
是不写代码
- Github 流行项目
4. 01
为什么要 Serverless / 低代码
5. 产品研发周期
交互设计
界面视觉设计
概念设计
研发设计
研发编码
产品经理
可行性分析
研发联调
设计师
开发
需求分析
用例测试
点子
想法
发布上线
迭代
推广运营
运营分析
测试
运维
运营
6. 开发的任务
· 主要任务:打造有抽象软件实体构成的复杂抽象
概念
· 次要任务:使用编程语言表达这些抽象实体,在
空间和时间限制内将它们映射成机器语言
- 人月神话/没有银弹
7. 为什么要 Serverless
服务器时代 IaaS Serverless SaaS
函数功能 函数功能 函数功能 函数功能
服务应用 服务应用 服务应用 服务应用
服务运行时 服务运行时 服务运行时 服务运行时
操作系统 操作系统 操作系统 操作系统
虚拟化 虚拟化 虚拟化 虚拟化
存储、网络等 存储、网络等 存储、网络等 存储、网络等
云服务器 + 运维 + 后端开发 + 前端开发 Serverless 平台 + 全栈工程师 SaaS平台
租机房/机柜 + 服务器 + 运维 +
后端开发 + 前端开发
8. 研发关注点 / serverless
弹性伸缩 网络专线 监控告警
异地容灾 安全加固 数据库
网络防护 冷备热备 文件存储
负载均衡 内容加速 网络请求
你需要关心的
数据库
文件存储
SDK
小程序
http
WEB
云函数
+ 业务逻辑
9. 业务逻辑实现:全代码 & 低代码 & 无代码
业务逻辑
无码操作
理想
通用 SaaS
无代码
低代码
灵活性强
代码编程
组件
低代码 + 模板
封装度高
应用框架
PaaS
类库
高级语言
低级语言
编程逻辑
研发类 SaaS
10. 为什么要低代码 / Serverless
· 封装研发任务
· 复杂度隔离
· 提供应用范式
· 降低研发门槛
11. 让开发者更专注于业务逻辑:
技术是作为工具为想法和创意服务
12. 02
低代码平台及架构简介
13. 微搭:基于 Serverless 低代码平台
次要任务平台化
主要任务范式化
14. 低代码平台要素
可视化开发 数据模型驱动
将传统的应用逻辑和声明代码映射成拖拽、表单等 UI 交互 通过定义数据模型及模型间的关系来定义应用和核心逻辑
扩展性 工程化
具备超出平台默认能力的扩展能力 具备开发、调试、测试、版本控制、发布上线等工程化能力
15. 可视化开发
可视化开发
声明式代码
16. 数据模型驱动
模型定义
模型关联
数据操作
17. 扩展性
逻辑扩展
服务扩展
UI 扩展
可视化配置
表达式
扩展语言
逻辑编排
自定义集成
18. 产品化 & 工程化
开发调试
版本管理
自动化构建发布
19. 低代码是使用更接近人类表达方式来进
行通用应用的开发方式
20. 前端:组件驱动开发
基础组件 高阶组件 区块
Atoms Molecules Organisms
模板
Templates
⻚面
Pages
21. 前端:组件驱动开发
按钮
图片
标题
输入框
链接
Atoms
表单
复合表格
导航
列表
Molecules
网站导航
登录注册
个人中心
Organisms
抽象
模板
Templates
Templates
复用
页面
Pages
Pages
22. ⻚面声明
组件
应用结构
主题⻛格
动作事件
数据保定
自定义
23. 后端:数据、流程、用户权限
数据实体模型
JSONSchema
流程
扩展 BPMN
角色、权限控制
服务逻辑扩展
云函数
24. 服务产品化:云开发 Serverless
自动弹性伸缩,业务0额外投入,支撑双11活动
25. 微搭应用开发流程
拖拽组件
配置属性
开发态
表单定义
模型、关联
表单配置
用户、权限
点拖流程
配置属性
DSL 申明: React/小程序代码
页面(DSL) 云函数 + 数据库逻辑
数据(jsonschema) 微搭服务配置
流程(bpmn)
发布
微搭 BFF
用户自定义逻辑
云函数
运行态
小程序
Web
第三方数据服务
云数据库
静态托管
用户
云开发 serverless 服务
低码公共服务
权限、流程等
26. 应用运行时
· 自动扩缩容
· 互相隔离
27. 数据即代码
声明式开发
Serverless 集成
28. 03
微搭低代码平台开发实践
29. 微搭中的应用分类
TO B:模型应用、管理系统
面向人群
小程序
TO
C:自定义应用
面向平台
移动 Web
PC Web
30. 应用范式
数据模型
UI
权限
流程
31. 数据模型-内置数据源
数据模型:字段类型、规则、索引
模型关系:关联关系、主子明细
数据操作:CURD
32. 数据模型-外部数据源
模板:腾讯文档、腾讯会议
HTTP:开放式 AP
云函数:完全自定义
33. 业务流程
触发时机:数据源触发、定时触发
操作节点:审批、通知、数据源变更等
34. ⻆色权限
企微集成
应用权限
⻚面权限
数据源权限
流程权限
35. ⻚面开发
自带组件 + 自定义组件
区块模板
表单生成、模型组件
属性、样式、事件控制
自定义样式逻辑扩展
36. 应用示例
37. Q & A
微搭官方公众号
38. 感谢倾听
大会官网