随笔 - 232, 文章 - 25, 评论 - 1261, 阅读 - 331万
  首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

微信公众平台开发教程(九)微信公众平台通用开发框架 

 一、思考

开发了几个微信项目,一直在思考:
如何将微信相关的处理与业务系统联系在一起?
如何做到彼此分离,且易于扩展?
能否开发一套独立的微信服务框架,支持各种业务应用?

二、现有常用的服务框架

支持多种业务应用,我们通过分层的方式来实现。将复杂的系统进行分层,将一些功能或者特有的逻辑进行封装,封装为不同的基础服务或中间件。业务层无需关心底层具体实现,只需进行简单调用、组装,即可支撑强大的业务应用。这样保证了层级独立,也使得系统易于维护和扩展。在一个平台基础上,可以构建多种业务应用。就像建楼房,地基打好了,楼房样式可以多种多样。也好比做菜,各种食材准备好了,可以进行不同搭配组合,就能做出不同的美味。常用的框架结构:MVC、MVVM等。以下就是通常的MVC架构。

 

三、微信服务框架

但是微信公众平台与以往的项目有所不同。其实现不再基于计算机底层实现。从应用层面讲,需要对业务的上层,即显示层和前端逻辑层、通信层,进行封装,下面才是真正的业务系统。从整体考虑,系统通过设计通用微信服务框架,支持所有业务。微信服务框架的改动,只与微信接口的调整做相关。多个业务系统,公用一套微信服务框架。这里介绍一种实现架构,如有欠缺,欢迎批评指正。

1、由微信服务框架,负责与微信服务器进行交互,包括验证签名、消息处理、消息分发、安全策略、日志处理等。

2、通过服务接口,将微信服务框架与业务逻辑进行分离,通过服务注册,将业务服务注册到微信服务框架。

3、通过微信服务框架的服务分发器,调用具体的业务应用。

4、业务应用,可以全新开发,也可以在已有的业务逻辑基础上,封装相关服务,并提供对应Provider,对微信接口予以支持。

 具体框架图如下所示:

 

 四、未来信息系统实现的一些愚见

仅仅是个人的一些看法。

从一个业务系统长远发展来看,一套业务系统,UI端会很多。特别是移动互联网的发展,许多功能需要移动化,之前的PC端、Web端,已经有一点的局限。

还有云计算的发展和深入,我们的业务服务也可以部署在云端。这些都对传统的信息系统提出了挑战。

如何将业务系统与前端展现相分离?
如何支持多终端?
能否实现一套业务逻辑,多端展现?

无论是开发新系统新应用,还是在已有的系统上扩展,这些问题必须认真考虑。业务逻辑需要更加细化、更加独立,业务逻辑需要从前端抽取出来,为了适应各种终端应用,可能需要加入一些适配层、代理层。尽管难度很大,但是在这个信息化高速发展的时期,如果不顺应潮流,势必被时代所淘汰。所以,变革不可避免。未来信息系统开发框架可能会变为下图所示。这里只是一个简单提纲,以后会就这一点进行专题介绍。

 

编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
历史上的今天:
2008-01-02 Virtual、Override和New关键字的使用
2008-01-02 nVarchar与varchar的区别
点击右上角即可分享
微信分享提示