mirror of
https://github.com/tiennm99/zfoo.git
synced 2026-05-24 08:26:00 +00:00
doc[protocol]: 更新文档
This commit is contained in:
+1
-1
@@ -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
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user