VB程序架构分析

简介: 在08年,我曾经写过VB程序。前面也将该VB程序的架构剥离出来并发出来共享了(具体见http://www.cnblogs.com/lzhdim/archive/2012/03/08/2385028.html)。

 

在08年,我曾经写过VB程序。前面也将该VB程序的架构剥离出来并发出来共享了(具体见http://www.cnblogs.com/lzhdim/archive/2012/03/08/2385028.html)。这些天快过年了,也没啥事,就想将该架构做个分析,仅做留念吧。

下面是该VB架构的主要部分:

 

下面对该架构做分析。

 

首先看看LogHelper这个组件。使用组件的好处是将各个不同用途的代码封装起来,以达到分层或者让程序的架构看起来更舒服。我这里讲组件看做主程序的插件使用。后续如果要编写使用插件的VB程序,可以进行参考。。。

 

1、  frmAbout是个关于窗口,用于显示该组件的相关属性

 

后面在主程序里如果使用该组件,可以通过调用该组件的一个API函数来显示该组件的相关属性信息。

 

该窗体的代码也很简单,就是一个调用API函数显示该组件的相关信息。基本上每个组件都有该窗体

 

2、  接下来看APICoordinator模块。

 

这个APICoordinator模块主要声明该组件使用到的Windows API函数定义。基本上每个组件都有该模块

 

3、  接下来看APIEnumerations模块

 

这个APIEnumerations模块主要声明了该组件使用到的枚举对象。基本上每个窗体都有该模块。

 

4、  接下来看看DLLInfo这个类模块

 这里从代码可以看出该类模块主要提供了一个API函数以获取该组件的相关信息。基本每个组件都有该类模块。

 

5、  接下来看Global类模块

 

该类模块主要对外提供公共的对象声明。基本每个组件都有该类模块。

 

6、  接下来看看MainAPI这个类模块。

 

MainAPI就是该组件的主要模块了。这里将该组件的主要代码和实现的功能进行存放。

这里有句Private mDLLInfo As LogHelper.DLLInfo 就是将该组件的DLLInfo这个类模块进行了声明以供主程序调用显示。

 

接下来对主程序架构进行分析。

1、  先看窗体。

 

这里只提供了主窗体Main和欢迎窗体Splash。提供欢迎窗体的好处就是对主程序进行初始化。

 

欢迎窗体主要实现该软件的相关基本信息。

 

2、  接下来看看AppConstants模块

 

该模块主要声明了主程序使用到的各个常量。

 

3、  接下来看AppTypesDeclare模块。

 

该模块主要声明了主函数使用到的类型,从上图可以看出定义了一个消息枚举。

 

4、  接下来看AppWin32API模块

 

该模块主要声明了主程序主要使用到的Windows API函数。这里没对各个API函数进行注释,请使用到的各位自己注释。

 

5、  接下来看AppWindowProcess模块

 

该模块单独提出来,对主程序接收的消息进行处理。

 

6、  接下来看DLLRegister模块

 

该模块主要提供对使用到的DLL或者以后要使用的插件DLL进行注册以进行调用。

 

7、  接下来看Helpers模块

 

 

8、  接下来看StartMain模块

 

该模块提供了主程序的入口。主要对主程序进行初始化。

 

9、  接下来看AppFunction类模块

 

该类模块主要声明了主程序使用到的各个函数。

 

10、 接下来看AppHelpers类模块

 

该模块主要对各个使用到的组件进行声明,以便进行调用。

 

11、接下来看AppMsgProcess类模块

 

该模块主要提供了各个消息对应需要处理的函数。

 

11、 接下来看AppVariables类模块

 

该类模块主要提供了主程序使用到的变量声明。

 

 

接下来对使用该架构进行描述。

先添加组件

 

1.1 选择添加工程

 

 

1.2 选择新建ActiveX DLL 。

 

 

1.3 将DLL目录复制过去。

 

 

1.4 选择添加窗体、模块、类模块

 

 

 

1.5添加完毕

 

 

接下来添加主程序

 

1.1 选择 添加工程

 

 

 

1.2 将目录复制过去

 

 

1.3 保存工程组

 

 

接下来就是对该架构进行修改以实现功能了。。。

 

1、修改StartMain.bas模块中的启动代码。

 

 

2、往AppConstants模块添加常量。

 

 

3、往AppHelpers类模块添加组件声明

 

 

4、往AppFunction类模块添加函数

 

这里添加了初始化和结束主程序的代码。。。

 

5、往AppMsgProcess类模块添加消息处理代码

 

 

6、往AppVariables类模块里添加变量

 

 

该架构的好处,就是基本让VB程序实现了命名空间的效果。其中的变量、函数、组件提供的函数等都是通过类模块实现了,从而在代码里可以直接.出来。具体自己去体验吧。

 

好了,到这里该架构基本介绍完毕,剩下的就是对该架构代码进行补充以实现主程序的功能了。

 

目录
相关文章
|
4月前
|
人工智能 API 数据安全/隐私保护
Apifox 与 Apipost 的 API 文档引擎对比:底层架构、性能与可扩展性分析
深入探索市场上两大主流API工具——Apifox和Apipost的文档能力时,发现了令人惊讶的差距。这不仅仅是功能多寡的问题,更关乎开发效率与团队协作的质变。
|
17天前
|
Java API 开发工具
灵码产品演示:软件工程架构分析
本演示展示灵码对复杂软件项目的架构分析与文档生成能力。通过Qwen3模型,结合PlantUML,自动生成系统架构图、微服务时序图,并提取API接口文档,实现高效、智能的代码理解与文档输出。
101 5
|
15天前
|
存储 JSON 数据处理
ClkLog埋点与用户行为分析系统:架构升级与性能全面提升
随着越来越多企业在实际业务中使用 ClkLog,数据规模和分析需求也不断提升,部分用户日活已经超过10万,为了顺应这一趋势,ClkLog 秉持 “开放透明、持续演进”的理念,推出了迄今为止最重要的一次性能优化升级。新版本在大规模数据处理与复杂查询场景中,性能表现实现了跨越式提升。经过多轮研发与严格测试,新版本现已正式上线:在原有付费版 1.0 的基础上架构全面升级,并同步发布全新的 2.0 版本。为用户带来更强的性能与更广的适用场景。
|
6月前
|
人工智能 自然语言处理 数据可视化
两大 智能体框架 Dify vs Langchain 的全面分析,该怎么选?资深架构师 做一个彻底的解密
两大 智能体框架 Dify vs Langchain 的全面分析,该怎么选?资深架构师 做一个彻底的解密
两大 智能体框架 Dify vs Langchain 的全面分析,该怎么选?资深架构师 做一个彻底的解密
|
2月前
|
存储 前端开发 JavaScript
如何开发设备管理系统中的经验分析报表板块 ?(附架构图+流程图+代码参考)
设备管理系统(EMS)助力企业高效管理设备生命周期,涵盖采购、维护到报废全流程。本文详解经验分析报表模块设计与开发,涵盖动态看板、点检、巡检、维修、保养及库存统计功能,提供代码示例与架构设计建议,提升设备管理效率与决策水平。
|
5月前
|
机器学习/深度学习 人工智能 算法
大型多模态推理模型技术演进综述:从模块化架构到原生推理能力的综合分析
该研究系统梳理了大型多模态推理模型(LMRMs)的技术发展,从早期模块化架构到统一的语言中心框架,提出原生LMRMs(N-LMRMs)的前沿概念。论文划分三个技术演进阶段及一个前瞻性范式,深入探讨关键挑战与评估基准,为构建复杂动态环境中的稳健AI系统提供理论框架。未来方向聚焦全模态泛化、深度推理与智能体行为,推动跨模态融合与自主交互能力的发展。
292 13
大型多模态推理模型技术演进综述:从模块化架构到原生推理能力的综合分析
|
9月前
|
机器学习/深度学习 安全 算法
十大主流联邦学习框架:技术特性、架构分析与对比研究
联邦学习(FL)是保障数据隐私的分布式模型训练关键技术。业界开发了多种开源和商业框架,如TensorFlow Federated、PySyft、NVFlare、FATE、Flower等,支持模型训练、数据安全、通信协议等功能。这些框架在灵活性、易用性、安全性和扩展性方面各有特色,适用于不同应用场景。选择合适的框架需综合考虑开源与商业、数据分区支持、安全性、易用性和技术生态集成等因素。联邦学习已在医疗、金融等领域广泛应用,选择适配具体需求的框架对实现最优模型性能至关重要。
1602 79
十大主流联邦学习框架:技术特性、架构分析与对比研究
|
4月前
|
运维 监控 数据可视化
一文详解:工业软件“低代码开发平台”技术架构研究与分析
本文围绕工业软件低代码开发平台的机遇与挑战,提出基于自动化引擎的技术架构,由工具链、引擎库、模型库、组件库、工业数据网关和应用门户组成。文章分析了其在快速开发、传统系统升级中的应用模式及价值,如缩短创新周期、降低试错成本、解决资源缺乏和提升创新可复制性,为我国工业软件产业发展提供参考和支持。
|
4月前
|
负载均衡 Java API
基于 Spring Cloud 的微服务架构分析
Spring Cloud 是一个基于 Spring Boot 的微服务框架,提供全套分布式系统解决方案。它整合了 Netflix、Zookeeper 等成熟技术,通过简化配置和开发流程,支持服务发现(Eureka)、负载均衡(Ribbon)、断路器(Hystrix)、API网关(Zuul)、配置管理(Config)等功能。此外,Spring Cloud 还兼容 Nacos、Consul、Etcd 等注册中心,满足不同场景需求。其核心组件如 Feign 和 Stream,进一步增强了服务调用与消息处理能力,为开发者提供了一站式微服务开发工具包。
496 0
|
安全 数据处理 数据安全/隐私保护
C/S架构与B/S架构的适用场景分析
C/S架构(客户端/服务器架构)与B/S架构(浏览器/服务器架构)在适用场景上各有特点,主要取决于应用的具体需求、用户群体、系统维护成本、跨平台需求等因素。
960 6

热门文章

最新文章