Skip to content

0924关于是否应该设计出多版本的DI、DO实体

ziyouzy edited this page Sep 24, 2020 · 3 revisions

比如现有的YouRen_DI,是不是应该转变下思路,让他与协议版本联动:

YouRen_DI20200924、YouRen_DI20200928、YouRen_DILV1、YouRen_DIFORKJDX

这样的命名规范?

如真的是这样,那么就应该在physicalnode包里存在下面的结构:

di.go、do.go、wsd.go、ups.go、zndb.go等等

这是否能有助于整体项目的开发呢?

感觉上还是可以的,命名方式可以变为:

di.go/DI_YouRen_Base_LV1这样,可以带上厂家名称、产品型号、以及结构体的版本号

感觉会很方便后期新设备的加入,那我就这样先尝试一下吧

===

而协议与实体工厂函数如何实现对接,具体可参考与复制physicalnodedao层的工厂函数

可以看到,不会再去分析[]byte字节数组的各个字段了,虽然需要switch分支,但是只是分析nodetype以及protocoltype了

Clone this wiki locally