【技术实现步骤摘要】
桌面应用框架、构建方法、桌面应用运行方法及存储介质
本专利技术涉及一种桌面应用框架、基于该框架构建桌面应用的方法、所构建的桌面应用的运行方法及存储介质。
技术介绍
Electron是一个基于Chrominum和Node.js的跨平台桌面应用框架。在这个框架中很容易构建基于HTML、CSS和JavaScript技术的跨平台桌面应用。构建出来的桌面应用能较好地兼容Mac、Windows和Linux操作系统,Electron是能够轻松实现一套代码多个平台部署的UI解决方案。本申请人在开发PLC编程环境软件--MaVIEW(MaVIEW,ManagementofVirtualizedIndustrialEngineeringWorkbench,是北京东土科技股份有限公司提供的东土工业服务器或东土PLC控制器进行控制系统编程组态的一体化平台)时,桌面UI的实现采用了基于Electron框架进行构建。但本申请人在开发中发现,由于PLC采用嵌入式C语言开发,PLC与上层进行数据交互时大量C语言数据都基于C语言的结构体、数组等二进制 ...
【技术保护点】
1.一种桌面应用框架,其特征在于,包括:依次耦接的UI交互业务层、Go绑定层和业务服务层;/nUI交互业务层用于提供UI界面,以及根据通过UI界面接收的用户操作创建对应该操作的业务和业务数据,并将业务数据打包生成二进制流;和/或,接收回调的业务数据的二进制流,解包及取出回调的业务数据并通过UI界面相应展示;/n业务服务层采用Golang语言实现,用于接收二进制流并解包及取出业务数据,并使用该业务数据执行相应的业务;和/或,在执行某业务时创建回调的业务数据并打包生成二进制流;/nGo绑定层向UI交互业务层和业务服务层提供了接口,用于实现UI交互业务层与业务服务层之间传输所述二进制流。/n
【技术特征摘要】
1.一种桌面应用框架,其特征在于,包括:依次耦接的UI交互业务层、Go绑定层和业务服务层;
UI交互业务层用于提供UI界面,以及根据通过UI界面接收的用户操作创建对应该操作的业务和业务数据,并将业务数据打包生成二进制流;和/或,接收回调的业务数据的二进制流,解包及取出回调的业务数据并通过UI界面相应展示;
业务服务层采用Golang语言实现,用于接收二进制流并解包及取出业务数据,并使用该业务数据执行相应的业务;和/或,在执行某业务时创建回调的业务数据并打包生成二进制流;
Go绑定层向UI交互业务层和业务服务层提供了接口,用于实现UI交互业务层与业务服务层之间传输所述二进制流。
2.根据权利要求1所述的框架,其特征在于,所述UI交互业务层采用Electron框架,采用JavaScript或TypeScript语言实现。
3.根据权利要求1或2所述的框架,其特征在于,
所述业务数据的结构体通过googleprotobuf进行定义;
使用protoc工具对所定义的业务数据的结构体分别生成JavaScript和Golang的类定义代码,UI交互业务层和业务服务层分别依据对应的类定义代码进行业务数据的所述创建和所述取出。
4.根据权利要求1所述的框架,其特征在于,Go绑定层提供的所述接口包括:
对UI交互业务层的正向调用接口,用于接收UI交互业务层所传递过来的业务数据的二进制流;
对业务服务层的正向调用接口,用于向业务服务层传输所述业务数据的二进制流。
5.根据权利要求4所述的框架,其特征在于,Go绑定层提供的所述接口还包括:
对UI交互业务层的回调注册接口,用于向UI交互业务层提供回调调用接口的注册服务;
对UI交...
【专利技术属性】
技术研发人员:宋健玮,边浩,
申请(专利权)人:北京东土科技股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。