
# 应用开发入门指引
#### 1、熟悉AstroZero环境
使用Astro轻应用进行应用开发，一般分为**开发-\>测试-\>上线** 三个阶段。每个阶段都会有独立的环境，让各阶段数据隔离，保证正式上线版本稳定。各环境具体介绍，请参见[开发环境介绍](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0003.html)。
#### 2、了解命名空间
由于不同租户间的数据可打包共享，为了避免数据命名的重复（例如数据对象、应用、服务编排等），租户在首次创建应用前，需要先定义一个命名空间。
租户的命名空间唯一且每个租户只能创建一个命名空间。命名空间一旦设定不能修改，请慎重定义，建议您使用公司或者团队的缩写作为命名空间。更多介绍，请参见[了解命名空间](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0033.html)。
#### 3、创建低代码应用
AstroZero覆盖三大开发低代码应用开发场景，满足行业客户、开发者等各种需求。
表1开发场景介绍 
| 分类   | 应用类型           | 使用说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| 轻应用  | 轻应用            | 轻应用一般为轻量级的应用，不涉及复杂的代码，用户通过零代码或低代码就能轻松完成应用的搭建。 在AstroZero中，可以通过如下两种方式创建轻应用。 - [使用应用模板创建应用](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0002.html#astrozero_05_0002__section16334414153812) 当您的业务与应用模板中的场景相似度较高时，可以尝试使用模板创建，并在模板应用的基础上继续改造应用。   - [从空白开始创建一个全新的应用](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0002.html#astrozero_05_0002__section8561116389) 从前端到后端，从零开始，一步步完成应用的开发。    |
| 行业应用 | 行业应用           | 行业应用是针对不同行业领域，如城市、园区、能源及交通等创建的应用。 在AstroZero中，可以通过应用模板或从空白开始，创建一个全新的行业应用，操作方式与轻应用相同。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| 行业应用 | Addon应用        | 当需要基于已有应用或解决方案（不是单一的应用，某一解决方案会涉及到多个应用）进行定制时，可选择创建Addon类型应用。更多内容，请参见[创建Addon应用](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0004.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| 行业应用 | Native Service | 租户在AstroZero平台外开发了一些服务，服务运行在Docker容器中。若希望将这些服务集成到AstroZero中，供AstroZero内部应用或其他第三方系统调用时，可选择创建Native Service。更多内容，请参见[如何创建原生服务](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0262.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| 行业应用 | 服务组件（BO）       | BO即商业对象，是封装了完整的数据模型、业务逻辑、页面展现的软件单元，一个BO提供一个完整场景的服务，为上层应用提供特定服务。用户可基于BO，如魔方一样创建功能各异的应用。更多内容，请参见[服务组件（BO）](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0660.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| 业务大屏 | Astro大屏应用      | Astro大屏应用（简称Astro Canvas），是Astro轻应用提供的可视化页面构建服务，提供了丰富的可视化组件、灵活的数据接入和多种方式页面构建能力，支持多屏适配，帮助开发者快速构建和发布专业水准的实时可视化应用。通过Astro Canvas一站式数据可视化开发，可分钟级构建业务大屏、小屏页面。更多内容，请参见[用户指南（Astro Canvas）](https://support.huaweicloud.com/astrocanvas/index.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   
#### 4、开发低代码应用
低代码应用创建完成后，将进入开发阶段，您还需要进行以下操作。
表2开发低代码应用 
| 操作   | 操作对象 | 使用说明                                                                                                                                                                                                                                                  |
|:---|:---|:---|
| 后端开发 | 对象   | AstroZero中的对象（也可以称为Object）相当于传统方式开发业务系统时，数据库中创建一个表。每个对象对应一张数据库表，用于保存业务系统需要的配置数据和业务数据。更多内容，请参见[对象](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0006.html)。                                                                       |
| 后端开发 | 触发器  | 触发器以图形表示的方式将业务流程呈现给用户，触发器配置好后，用户不必手动执行这些操作，系统会自动执行。更多内容，请参见[触发器](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0116.html)。                                                                                                        |
| 后端开发 | 脚本   | 针对业务逻辑比较复杂的场景，AstroZero平台提供了脚本（Script）能力，支持用户在线开发TypeScript脚本，完成灵活复杂的业务逻辑。更多内容，请参见[脚本开发](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0044.html)。                                                                                |
| 后端开发 | 服务编排 | 服务编排是一种通过简单的拖拉拽式流程编排以及参数配置的方式来进行服务开发的能力，并支持对已开发的服务重新进行组合编排。更多内容，请参见[服务编排](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0012.html)。                                                                                               |
| 后端开发 | BPM  | BPM（Business Process Management）即业务流程管理，源自业界BPMN 2.0标准。AstroZero基于该规范实现了自己的业务流程管理系统，由于BPM本身已经成为了业界一套行业规范，因此在AstroZero称实现此类流程的引擎为BPM流程编排。更多内容，请参见[BPM服务编排](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0055.html)。               |
| 前端开发 | 标准页面 | 标准页面是一种将一个或多个组件拖进画布，进行低代码甚至无代码的配置，即可快速完成业务功能的前端页面。对于一般的业务应用系统，例如请假电子流、出差报销、在线投票等企业常见业务场景，其功能主要是针对业务数据的增、删、改、查，且前端界面的样式相对简单的页面，此时，您即可使用AstroZero提供的"标准页面"。更多内容，请参见[标准页面](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0129.html)。 |
| 前端开发 | 高级页面 | 对于一些样式比较复杂的页面，例如网站、电商、园区大屏等，可以使用平台提供的"高级页面"。更多内容，请参见[高级页面](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0164.html)。                                                                                                              |
| 集成开发 | 连接器  | 通过AstroZero开发的应用可以与第三方应用系统对接，实现微信支付、短信发送等功能。更多内容，请参见[与云服务集成](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_05005.html)。                                                                                                           |
| 集成开发 | 数据接入 | 当需要从外部数据源获取数据，按照需求对数据进行一系列处理，然后转化成内部事件，输出给Kafka或者ROMA。这时您可通过配置"数据接入"，来实现这整个流程。更多内容，请参见[如何配置数据接入](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0085.html)。                                                                        |
| 集成开发 | 原生服务 | AstroZero支持无缝集成原生服务的API，并开放给应用调用。更多内容，请参见[原生服务](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0258.html)。                                                                                                                         |
| 应用配置 | 配置项  | 开发应用时，创建的各种配置项，如系统参数、选项列表、错误码等。更多内容，请参见管理员指南。 说明： 系统参数、选项列表、错误码这三类配置的删除操作都属于全局范围的操作，如果多应用同时使用的配置项，建议不要在某一应用随意删除。                                                            |
| 功能测试 | 预览应用 | 应用开发完成后，可预览并验证应用。例如，调查问卷应用创建完成后，通过预览功能，可预览并体验调查问卷应用的功能。                                                                                                                                                                                               |
   
#### 5、编译发布低代码应用
在低代码应用开发完成后，应用还需要经过编译、打包和发布。AstroZero支持编译资产包和源码包两种类型的应用包，详情请参见[源码包与资产包对比](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0674.html#astrozero_05_0674__section220013511580)。根据应用编译类型不同，发布方式也有所差异。
表3编辑发布应用 
| 发布方式        | 使用说明                                                                                                                                                            |
|:---|:---|
| 我的仓库        | 将应用发布到我的仓库，可供其他用户在其他开发环境、沙箱环境、运行环境中下载安装软件包，以便于测试或者使用该软件。更多内容，请参见[如何将应用发布到"我的仓库"](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_5049.html)。  |
| 华为OneMobile | 将应用中的标准页面和高级页面，发布到华为OneMobile。更多内容，请参见[如何将应用发布到华为OneMobile](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_5050.html)                        |
| 华为OneMDOS   | 将应用小程序发布到OneMDOS。更多内容，请参见[如何将应用发布到华为OneMDOS](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_5051.html)。                                      |
| WeLink-We码  | 将标准页面或高级页面以小程序（即应用）的方式，发布到企业WeLink，提供给企业用户使用。更多内容，请参见[发布WeLink We码应用](https://support.huaweicloud.com/bestpractice-astrozero/astrozero_bestpractice_0007.html)。 |
| WeLink-轻应用  | 将应用发布成WeLink轻应用，提供给WeLink企业用户使用。更多内容，请参见[发布WeLink轻应用](https://support.huaweicloud.com/bestpractice-astrozero/astrozero_bestpractice_0001.html)。                 |
| 微信          | 将应用中的标准页面和高级页面，发布到微信小程序。更多内容，请参见[发布微信小程序](https://support.huaweicloud.com/bestpractice-astrozero/astrozero_bestpractice_0002.html)。                             |
| 下载前端运行包     | 选择该方式可生成前端运行包。更多内容，请参见[如何将应用发布成下载前端运行包](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_5052.html)。                                           |
   
#### 6、安装部署低代码应用
应用开发编译发布成应用包后，可在沙箱环境和运行环境中安装使用。
- 在沙箱环境安装应用 在应用正式发布上线之前，需要在测试环境进行测试，包含数据配置。这里一般以沙箱（Sandbox）环境来作为测试环境，具体操作请参见[如何使用沙箱进行测试](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0680.html)。在沙箱环境安装应用的流程和在运行环境安装应用流程一致，如[图1]。
  
- 在运行环境安装应用
  应用包的开发者租户，可以在当前租户的运行环境中安装应用资产包，安装后进行测试或直接部署运行该应用。安装应用的操作，请参见[如何安装已开发好的应用](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0344.html#section1)。
  图1在运行环境安装应用流程   
  ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001932887388.png "点击放大") 
 
