doc[protocol]: 更新文档

This commit is contained in:
godotg
2022-09-27 21:02:24 +08:00
parent 94ae7b0f33
commit cecd458148
2 changed files with 8 additions and 5 deletions
+1 -1
View File
@@ -99,7 +99,7 @@ cpu i9900k
- 为了防止代码里Object满天飞,避免协议层和po层混用对象造成一些潜在的并发问题,zfoo强制要求协议类必须实现IPacket接口
```
现在IPacket的接口只是一个标识接口,继承IPacket的设计主要是为了让代码容易理解一点,改为只继承Object也并没有很大工作量
现在IPacket的接口只是一个标识接口,继承IPacket的设计主要是为了让代码更优雅,容易理解一点,改为只继承Object也并没有很大工作量
继承IPacket的设计还有跨语言层面上的考虑,极大的简化了实现其它语言的序列化和反序列化难度,统一了其它语言的代码实现
```
@@ -14,7 +14,12 @@
package com.zfoo.protocol;
/**
* 所有协议类都必须实现这个接口
* 所有协议类都必须实现这个接口,协议类必须是简单的javabean,不能继承任何其它的类,但是可以继承接口
* <p>
* 为了防止代码里Object满天飞,避免协议层和po层混用对象造成一些潜在的并发问题,zfoo强制要求协议类必须实现IPacket接口
* <p>
* 现在IPacket的接口只是一个标识接口,继承IPacket的设计主要是为了让代码更优雅,容易理解一点,改为只继承Object也并没有很大工作量
* 继承IPacket的设计还有跨语言层面上的考虑,极大的简化了实现其它语言的序列化和反序列化难度,统一了其它语言的代码实现
*
* @author godotg
* @version 3.0
@@ -22,11 +27,9 @@ package com.zfoo.protocol;
public interface IPacket {
/**
* 这个类的协议号
* 这个类的协议号,重写这个方法,使用多态获取协议号,可以微弱的提高一点性能
* <p>
* 子类可以不用重写这个方法,也能够通过反射自动获取到PROTOCOL_ID这个协议号,序列化一次对象只会调用一次,性能损失很小
* <p>
* 重写这个方法,使用多态获取协议号,可以提高一点性能
*
* @return 协议号Id
*/