轻语言程序基础结构
一个完整的轻语言程序,通常由一个入口文件、一个配置文件和若干个源代码文件组成:
轻程序/
├── src/
│ ├── 源代码1.spl
│ ├── 源代码2.spl
│ ├── 自定义结构.st
│ ├── 模块1.sm
│ ├── static/
│ │ ├── 图片.jpg
│ │ └── 其它文件.txt
├── App.spl
└── 轻程序.vsln
项目文件夹必须与项目索引文件同名。
1.程序入口文件 App.spl
启动程序时,系统会先从入口文件启动程序;以视窗程序为例:当编译输出一个可被执行的轻语言程序文件时,在 Windows 系统中启动该文件;系统将执行入口文件,并回调入口文件中相关事件。
视窗程序示例 App.spl 文件内代码:
事件 应用被启动(命令参数 为 文本型[])
' 当用户使用命令行或双击打开本程序时会先触发该事件
' 创建窗口对象
变量 主窗口1 = 创建 主窗口()
' 设置启动窗口的显示尺寸
主窗口1.置尺寸(300,500)
' 加载并显示窗口
主窗口1.显示()
结束 事件
注意:不同平台的程序入口文件存在略微差异,具体差异请阅读目标平台相关文档。
2.项目索引文件(配置文件)
配置文件主要负责程序的配置管理;轻语言中配置文件采用XML
语言描述,配置文件需与工程文件夹名称相同,后缀为:.vsln
默认配置文件结构为:
<?xml version="1.0" encoding="utf-8"?>
<project>
<version name="4.0" code="4" ide="2023" />
<property type="app" plugin="javafx">
<version name="1.0" code="1" />
<app package="my.app" name="" />
</property>
</project>
-
project 项目根节点
-
version 可以打开项目的 VcnStudio 的最低版本
-
property 项目属性
-
type 项目类型,app 表示应用程序、component 表示组件、类库。
-
plugin 所属平台。
-
version 程序版本
-
app 程序包名、编译输出名称
-
3.源代码文件
源代码文件是除入口文件外的,所有其它包含程序源代码的、被存放到项目根目录中 src
文件夹中的文件;这些文件是程序中重要的功能或逻辑组成文件,一个可以被正确编译的源代码文件通常由:变量、事件、函数等组成,以一个普通的轻语言视窗程序为例,其代码结构组成为:
3.1 变量
变量声明是可选的;如果一个窗口或模块中不需要变量,可以省略不写。
变量 窗口变量1 为 文本型
3.1 事件
窗口事件中的窗口创建完毕
是必须声明的事件,不能被删除,每个窗口都必须包含该事件,模块中不需要声明默认创建事件。
事件 窗口创建完毕()
调试输出("窗口创建完毕")
结束 事件
3.2 函数
函数声明是可选的,窗口或模块中如果不需要函数,可以省略。
函数 子程序1()
变量 和值 为 整数型
和值 = 100 * 2
调试输出("和值:" + 和值)
结束 函数
完整源代码
变量 窗口变量1 为 文本型
事件 窗口创建完毕()
调试输出("窗口创建完")
结束 事件
事件 按钮1.被单击(来源对象 为 对象,事件对象 为 鼠标事件)
' 调用子程序
子程序1()
结束 事件
函数 子程序1()
变量 和值 为 整数型
和值 = 100 * 2
调试输出("和值:" + 和值)
结束 函数
所有源代码文件编码规定为:UTF-8-无-BOM 格式。
源代码文件格式
轻语言在编译时根据不同的源代码文件后缀格式,区分不同的源代码文件类型、以下为轻语言目前支持的文件类型后缀:
-
.spl
实现程序逻辑和业务功能的主要源代码文件。 -
.st
存放自定义结构体数据的文件。 -
.sm
模块文件。
程序执行流程
所有的轻语言程序都是从入口文件启动的,在入口文件中调用其它模块功能、或显示窗口。经过入口程序的引导加载后、最终向用户展示一个完整的程序功能。