互联网时代,通信服务非常常见,看过一些开源工程、工作过公司的工程,对于应用层基础类的设计相对于通信库而言,欠缺很多,导致应用层代码相对逻辑不够不清晰,也给以后的维护带来一定的难度。本篇就是讲述通信服务在上层应用基类设计的一些个人观点和看法,仅起到抛砖引玉,给出一个不同的设计,各位读者如有不同的设计思路,可以留言讨论。
一、基类设计范畴。
基类设计范畴较广,所以在本篇开启前,需要确定设计范畴,以免丢失主要目标。一般通信服务工作处理流程都是从底层通信库接收业务数据包开始,经由底层回调应用层进行逻辑处理,最后再由底层向业务发起者返回相关业务数据包,结束整个处理流程。底层通信库一般独立封装,本人博客有相关介绍篇章,有意向者可自行查找阅读。本篇讲述就是应用层基类的设计,看过很多通信服务代码,而应用层基类设计基本是空白状态,有直接用通信类中函数实现的,也有用函数指针实现的,各种方式都有,我个人认为逻辑都不是很清晰,对于代码阅读和后续维护都不是太友好,所以个人认为需要设计几个框架式的基类来统一和规范这种情况。
二、设计原则。
1. 既然是因为逻辑不清晰带来的问题,那么设计原则,肯定就需要解决这个不清晰的问题。通信服务业务处理逻辑不尽相同,既然是框架性质的基类,那么肯定是不能包含具体业务逻辑,只能体现通信服务通用的逻辑处理流程。
2. 通信服务有其相应的各种指标&#