VAPS XT入门教程20.09:大工程集成开发与编译
系列索引:VAPS XT入门教程索引
方案
如果一个VAPS XT工程太大,单个工程超过2GB。那么在性能较弱的PC上开发、编译、运行都会出现问题(升级是不可能升级的,这辈子都不可能升级的)。
根据开发的各个阶段,VAPS XT的开发商提供了两种不同的方案,VAPS XT用户某研究所提供了第三种方案。
方案一:集成编译
也就是本文涉及的方案,本文的方案描述基于Presagis方案修改。
- 以根工程和子工程的方式设计VAPS XT程序
- 根工程负责窗口管理、子工程负责窗口
- 分别进行设计、生成代码、编译
- 将子工程的*.obj替换掉根工程的同名文件
- 编译根工程、生成程序
方案二:VxWorks多分区方案
将程序部署在Vxworks平台上,不同的窗口部署在不同的分区。此方案的具体细节我还有见到,也没有测试过,不做过多评价。
方案三:窗口管理器
此方案由某研究所提供,经过我方项目负责人评估后暂时没有接。
将各个窗口编译为可执行程序,然后在Linux操作系统(为什么是Linux操作系统上呢?因为要部署在国产平台,那帮奸商最喜欢搞Linux换皮)上开发一个基于X11/Wayland的窗口管理器。
这样每个程序都很小,想用哪个用哪个。
此方案目前属于前期探索。
说明
测试环境:Windows10 + VAPS XT4.1 + Visual Studio 2010 Express
集成编译
此引导的目的是演示如何高效创建和分割大VAPS XT工程。此方法可以让大团队的工程易于管理、集成、编译。
引导包含三个部分:
- 设计顶层工程架构
- 实现独立子工程
- 集成工程和编译
介绍
以下是工程拆分为子工程和集成的完整流程:
- 将程序拆分为不同的页面或者部分(这样不同团队可以处理不同页面/部分)
- 定义每个页面/部分的命名空间(比如使用特别前缀以避免命名冲突)
- 定义公共共享资源(tables,stylingRules)
- 定义每个页面/部分所使用的每个表的索引范围(比如,页面/部分1只能使用图片库的第0-9部分,页面/部分2只能使用图片表的20-29,等等)
- 创建一个顶层根工程作为模板
- 将子工程(页面/部分)分配给不同的开发团队,他们必须在上面定义的基础上开发
- 每个子工程可以包含只在此工程中使用的条目,比如数据类型,资源、特有的小组件。
- 当子工程提交回根工程,集成人员集成编译
注意
- 如果使用的是已有的界面,注意尺寸数值要统一
- 此方案调用的是Format
技术交流群,欢迎加入讨论。这个圈子很小,大佬可能没兴趣加这些群聊社区之类的。所以只能带你入门,当然,欢迎大佬指导
VAPS XT入门教程20.09:大工程集成开发与编译
https://blog.jackeylea.com/vapsxt/integration-compile-vapsxt-large-project/