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

一、思考

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

二、现有常用的服务框架

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

微信公众平台开发教程(九)微信公众平台通用开发框架_第1张图片

 

三、微信服务框架

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

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

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

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

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

 具体框架图如下所示:

微信公众平台开发教程(九)微信公众平台通用开发框架_第2张图片

 

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

仅仅是个人的一些看法。

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

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

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

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

微信公众平台开发教程(九)微信公众平台通用开发框架_第3张图片

你可能感兴趣的:(java后台-微信开发)