
# 产品功能
华为云Astro轻应用服务支持的主要功能如下。关于各功能支持的地域（Region）信息，可通过控制台查询详情。
#### 应用
应用即一个App，创建应用是在华为云Astro轻应用开发项目的第一步，也是端到端构建软件应用的入口。通过华为云Astro轻应用提供的界面、逻辑、对象等可视化编排工具，以"拖、拉、拽"的方式，即可快速构建应用。在华为云Astro轻应用中，支持创建如下类型的应用：
- 标准应用：标准应用是可独立运行的管理类应用，是一个实现了某种业务管理的可运行应用程序。低代码平台为了降低应用开发成本，提高应用开发效率，内置了丰富的应用模板，当业务与应用模板中的场景相似度较高时，可以尝试使用应用模板创建，并在模板应用的基础上继续改造应用。
- 扩展应用：当需要基于已有应用或解决方案（不是单一的应用，某一解决方案会涉及到多个应用）进行定制时，可选择创建扩展类型的应用。通过该方式创建的应用，可复用已有资产，可乐高式搭建组装后，稍加定制便可满足业务需求，大大提高开发效率。
- BO：业务对象（BO）是封装了完整的数据模型、业务逻辑、页面展示的软件单元。一个BO提供一个完整场景的服务，为上层应用提供特定服务。不同用户可以开发各自的BO，在BO里创建逻辑使其具有特定的业务功能，开发好后制作成用户包并进行发布。下载用户包给其他用户，其他用户安装BO包后，在上层应用（需要使用该BO服务的应用）里导入发布好的BO，即导入特定的业务功能进行使用。
- 原生服务：开发者线下开发了一些服务，服务运行在Docker容器中。开发者希望可将线下开发的这些服务集成到华为云Astro轻应用上，供华为云Astro轻应用内部应用或者其他第三方系统调用时，此时可通过创建原生服务引入线下开发的原生服务。
更多关于应用的信息，请参考[使用华为云Astro轻应用创建应用概述](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9003.html)。
#### 标准页面
标准页面是一种将一个或多个组件拖进画布，进行低代码甚至无代码的配置，可快速完成业务功能的前端页面。对于一般的业务应用系统，例如绩效管理、请假电子流、出差报销、在线投票等企业常见业务场景，其功能主要是针对业务数据的增、删、改、查，且前端界面的样式相对简单的页面，此时，您可使用华为云Astro轻应用提供的"标准页面"能力。标准页面提供了丰富的组件，组件包含了预置的样式，并封装了基础事件代码，实现了开箱即用，避免重复写样式和事件代码，使开发人员更好的专注于业务场景的挖掘。
更多关于标准页面的信息，请参考[华为云Astro轻应用标准页面概述](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9050.html)。
#### 高级页面
高级页面主要用于开发应用中较复杂的前端页面，例如包含图片、图表、视频、地图等元素的页面。高级页面支持多种框架，支持代码开发，比较自由，多用于对页面效果要求高的场景。
高级页面由一个或者多个组件拼装而成，如果将一个高级页面看成拼图游戏的完整图案，那么组件相当于拼图的每一小块。高级页面与组件的关系，如下图所示，其中Page为高级页面，Widget为高级组件。
图1高级页面与组件关系   
![](https://support.huaweicloud.com/productdesc-astrozero/zh-cn_image_0000002465434088.png)
更多关于高级页面的信息，请参考[华为云Astro轻应用高级页面概述](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9092.html)。
#### 对象
低代码平台中的对象（也可以称为Object）相当于传统方式开发业务系统时，数据库中创建的一个表。每个对象对应一张数据库表，用于保存业务系统需要的配置数据和业务数据。
对象可以存储组织或业务特有的数据，您可以围绕对象这一核心，定义相关的字段、字段校验规则、界面样式、字段变更时的触发事件等。如果把待开发的业务系统比作一部电影，对象就是电影中的各个角色，需要勾勒角色的外貌、性格特点、人物关系和所经历的剧情。
华为云Astro轻应用中的对象包括如下几种：
- 标准对象：标准对象是低代码平台预置的对象，对象名称和对象字段均已定义好，可以满足最基本的业务需要。 在应用设计器的"命令行 \> 控制台 \> 对象管理"中，可以查看到平台所有的对象，其中没有前后缀的即为标准对象。您也可以在环境配置的"用户安全 \> 权限 \> 某个权限（如Portal User Profile） \> 标准对象权限"中查看。
- 自定义对象：开发者自定义的对象，允许用户新增、修改和删除自定义对象和自定义对象的字段。创建一个自定义对象后，系统会为自定义对象自动创建一些标准字段（Standard Fields）。
- 视图对象：与数据库中的View视图类似，用于对2个以上的对象进行关联查询，并把结果集以对象的形式展现，这样的对象称之为视图对象。视图对象中的数据只支持查询，不支持增加、删除和修改。
- 系统对象：系统对象是低代码平台各项系统功能模块所使用到的对象，如服务编排、脚本等。一般无需关注，如果需要定位问题，可使用SQL语句进行查询。
更多关于对象的信息，请参考[华为云Astro轻应用对象概述](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9025.html)。
#### 服务编排
服务编排是一种通过简单的拖拉拽式流程编排以及参数配置的方式来进行服务开发的能力，并能够对已开发的服务再封装或者重新进行组合编排，用户能够在服务编排编辑器内以图形化编排的形式快速地进行服务的开发并扩展出更丰富的业务功能，同时能够与API接口进行绑定，以API的形式对外提供服务。在华为云Astro轻应用中，脚本和服务编排都是负责业务接口和逻辑开发的，两者的主要区别是脚本是代码化的，而服务编排是图形化的；服务编排适用于业务逻辑比较简单的场景（建议不超过20个图元），对于业务逻辑比较复杂的场景需要使用脚本。
更多关于服务编排的信息，请参考[华为云Astro轻应用服务编排概述](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9130.html)。
#### 工作流
工作流即业务流程管理，源自业界BPMN 2.0标准。低代码平台基于该规范实现了自己的业务流程管理系统，由于工作流本身已成为了业界一套行业规范，因此在低代码平台中称实现此类流程的引擎为工作流。
与服务编排类似，工作流也是一套图形化的流程编排引擎，但是工作流着重于构建带有用户交互行为的业务流程，例如审批流、工单派发流程等。工作流与服务编排的区别如下：
- 工作流描述的是用户交互流程，使用用户任务将人和页面进行了关联，而服务编排描述的则是单次的业务操作。
- 工作流内置实现了顺序审批、或签、会签、投票等任务分派规则，可基于用户任务实现复杂的任务分派规则，应对复杂的交互流程。
- 工作流对每次用户交互都会产生流程历史并可以在流程历史中查看，对于非交互类流程这是非必要的。
更多关于工作流的信息，请参考[华为云Astro轻应用工作流概述](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9176.html)。
#### 脚本
针对业务逻辑比较复杂的场景，华为云Astro轻应用提供了脚本能力，支持用户在线开发TypeScript脚本，完成灵活复杂的业务逻辑。华为云Astro轻应用提供了一个方便简洁的在线开发IDE，即脚本编辑界面，脚本编辑界面开发体验接近离线的开发工具，具有如下优势：
- 现代化的编辑界面，语法高亮显示。
- 智能提示、智能补全、友好的语法错误提示。
- 精确查看定义、代码预览和查找引用。
- 快速在线编译。
- 支持使用console.log写日志分析复杂的问题。
更多关于脚本的信息，请参考[华为云Astro轻应用脚本概述](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9160.html)。
#### 事件
在业务流程中有意义的状态变化都可称为事件。自定义好事件后，可以基于该事件实现事件发送、事件订阅，对发送的事件数据进行分析处理等功能。事件分为标准事件和自定义事件。
- 标准事件：标准事件是系统定义好的事件，可直接订阅。
- 自定义事件：自定义事件是指用户根据自身业务需求，自行定义的事件。例如，在某个公司招聘场景中，招聘人员A和招聘经理B负责面试，招聘经理B负责决定该应聘者是否被录用，录用后，人事部C来给新员工办理各种手续。需要进行软件设计，一旦应聘者被录用后，不需要招聘经理自己去通知人事部，而是创建一个记录应聘者录用结果状态的事件，通过订阅该事件，系统根据状态结果自动发邮件给人事部，通知人事部是否办理入职手续。
更多关于事件的信息，请参考[华为云Astro轻应用事件概述](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9237.html)。
#### 触发器
触发器是基于某一个对象创建的，用户可自定义触发器的规则条件和相应动作，当与该对象相关的记录操作符合触发器规则设定的条件时，系统会自动执行触发器配置好的动作，用户不必手动执行这些操作。触发器以图形表示的方式将业务流程呈现给用户。
更多关于触发器的信息，请参考[华为云Astro轻应用触发器概述](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9242.html)。
#### 连接器
连接器是华为云Astro轻应用提供的，调用第三方服务的集成工具。华为云Astro轻应用封装了不同类型的连接器，用于对接相应的第三方服务，如OBS、Redis、云搜索和ROMA等。通过连接器，开发者无需关注具体代码实现，只需要配置集成服务的地址和鉴权信息，即可在服务编排或脚本中快速集成第三方系统。
更多关于连接器的信息，请参考[应用集成开发概述](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9209.html)。
#### 数据接入
数据接入是指通过对接多种输入源进行消息类数据的接入，如将ROMA侧的MQS，转换成Kafka消息队列中的事件，供平台业务逻辑接口使用。
更多关于数据接入的信息，请参考[通过数据接入将消息类数据接入华为云Astro轻应用](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9238.html)。
#### 零代码
零代码是华为云Astro轻应用提供的零代码应用构建平台。通过该平台，无需使用任何编程语言，只需通过拖、拉、拽，即可快速搭建应用程序，畅快创作、量身定制，让想法秒变应用。
更多关于零代码的信息，请参考[华为云Astro轻应用零代码应用开发流程](https://support.huaweicloud.com/usermanualnocode-astrozero/astrozero_05_1451.html)。
