
# 应用后端开发概述
后端开发主要包括模型开发、逻辑开发和流程开发三大类。各类中包含的具体功能，如[图1]所示。
图1后端开发   
![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001898652904.png "点击放大")
**模型开发**：在华为云Astro轻应用中是以模型驱动，快速构建业务场景的，因此首先要定义应用的数据模型，就是应用中的业务数据存储在哪里，也就是通常所说的搭建数据库、创建数据库表等。这些动作，对应华为云Astro轻应用中的对象，对象可以理解为数据库中表的概念。例如，在开发某个仓库商品管理应用时，需要创建商品和仓库两个对象，来分别存储商品信息（如商品编码、商品状态、库存总量、现存数量和仓库商品关系等）和仓库信息（如仓库名称、仓库编码、仓库地址和记录ID等）。如果需要实现多个对象之间关联数据查询功能，可通过创建对象视图来实现。
**逻辑开发**：数据模型开发完成后，相关的业务功能实现可能是和某些数据做对接，也可能是一些数据的处理，这就涉及到业务接口和逻辑的开发。脚本和服务编排都是负责业务接口和逻辑开发的，两者的主要区别是脚本是代码化的，而服务编排是图形化的；服务编排适用于业务逻辑比较简单的场景（建议不超过20个图元），对于业务逻辑比较复杂的场景需要使用脚本。触发器以图形表示的方式，将业务流程呈现给用户，触发器配置好后，用户不必手动执行这些操作，系统会自动执行。触发器的典型使用场景是脚本已实现了逻辑开发，这时不想修改脚本但需要去实现某个功能，此时可选择使用触发器。
**流程开发**：与服务编排类似，工作流也是一套图形化的流程编排引擎，但是工作流着重于构建带有用户交互行为的业务流程，例如审批流、工单派发流程等。在实际的业务流程开发中，通常会将工作流与服务编排结合使用，即服务编排用于实现系统的具体逻辑操作，工作流通过调用服务编排、关联用户任务与页面，实现多次人机交互的流程。此外，在业务系统中通常存在很多场景不需要人工参与，可以在系统后台定期完成的，此时可通过创建定时任务来实现。例如，通过创建定时任务，在每天凌晨3点，定时将到期的商品进行下架处理。
表1后端开发 
| 分类                                            | 特性                                                                                  | 特性说明                                                                                   |
|:---|:---|:---|
| 模型开发  | [对象](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9024.html)   | 对象（也可以称为Object）相当于传统方式开发业务系统时，数据库中的一个表。每个对象对应一张数据库表，用于保存业务系统需要的配置数据和业务数据。              |
| 模型开发  | [事件](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9234.html)   | 在业务流程中，有意义的状态变化都可称为事件。自定义好事件后，可基于该事件实现事件发送、事件订阅，对发送的事件数据进行分析处理等功能。                     |
| 模型开发  | [结构体](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9100.html)  | 结构体是用于约束应用开发时，输入、输出和内部变量使用的规范。在华为云Astro轻应用低代码平台中可以应用于服务编排、连接器等场景的外部输入、输出参数以及流程内部的变量结构。 |
| 逻辑开发                                          | [脚本](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9159.html)   | 脚本和服务编排一样，都是完成业务接口和逻辑开发的，脚本是基于TypeScript语言，适用于业务逻辑比较复杂的场景。                             |
| 逻辑开发                                          | [服务编排](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9129.html) | 服务编排和脚本一样，都是完成业务接口和逻辑开发的，服务编排是图形化的，适用于业务逻辑比较简单的场景（建议图元不超过20个）。                         |
| 逻辑开发                                          | [触发器](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9240.html)  | 触发器以图形表示的方式将业务流程呈现给用户，触发器配置好后，用户不必手动执行这些操作，系统会自动执行。                                    |
| 流程开发                                          | [工作流](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_1284.html)  | 与服务编排类似，工作流也是一套图形化的流程编排引擎，但是工作流着重于构建带有用户交互行为的业务流程，例如审批流、工单派发流程等。                       |
| 流程开发                                          | [定时任务](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9170.html) | 通过创建定时任务，让系统自动执行某脚本、服务编排完成业务功能。例如，系统中存在一个定时任务，在每天凌晨3点，定时将到期的商品进行下架处理。                  |
   
