Closed zouyx closed 4 years ago
如果将实现作为下级目录,那子模块是否也应该作为下级目录。这样就会出现混乱的情况
如图:config_center目前就是按照这个规矩来组织的目录,其中: configurator和parser是config_center的子模块,其又是一层接口,其下各有一个默认实现。 而apollo和zookeeper是config_center的实现。目录名称是首字母排序,感觉很乱,不够条理。
refer from programming rule
package 名称还是 常数,不要使用下划线.
后面再提交的pr,必须有注释 单测 和 集成测试用例 或者 使用用例。注释就不要再偷懒成 DubboProtocol ...
这种了。
dubbo-go 包命名规范
1.我们以大模块到小模块的命名方式,
2.最底层模块,一定要有实际意义的词语为包命名,并拒绝没有实际意义的命名方式,如impl。
3.字母全小写。
4.不使用驼峰信息,第二个单词前加下划线,
5.起码三级目录需要参考dubbo。
一级模块应只包含以下包命名: cluster:集群相关 common:静态常量,公用vo等 compatible: config: config_center:配置中心 container:容器 demo: filter:过滤器 metadata:元数据 monitor:监控 plugin:插件 registry:注册中心 remoting:远程组件交互的基础模块,如zk,nacos,不实际用于项目,通过其他模块调用如registry,config_center rpc:rpc serialization:序列化
参考:https://github.com/apache/dubbo
以配置中心apollo为例
dubbo目录:dubbo-configcenter/dubbo-configcenter-apollo/src/main/java/org/apache/dubbo/configcenter/support/apollo
go目录:config_center/apollo
转换规则:
规则1,2,3,4,5
并去除【dubbo-】,【src/main/java/org/apache/dubbo】,【support】(因support没有太大实际意义)