本文主要是介绍Kitty-Cloud中的编码规范,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
项目地址
https://github.com/yinjihuan/kitty-cloud[1]
规范定义
每个公司,每个团队都有不同的规范,有的人喜欢这样,有的人喜欢那样。所以一个团队中最好有明确的一份规范,这样代码看起来就会很清爽。
本文只写了一些最基本的,更全的大家可以参考阿里编码规范。
API 层
autoconfigure:自动配置包名,类名以 AutoConfigure 结尾,比如 RemoteServiceAutoConfigure。
fallback:Feign 熔断回退包名,类名以服务接口名开头+FallbackFactory 结尾,比如 ArticleRemoteServiceFallbackFactory。
request:API 参数类包名,类名以 Request 结尾,比如 ArticleQueryRequest,ArticleSaveRequest。
response:API 响应类包名,类名以 Response 结尾,比如 ArticleResponse。
service:API 接口定义包名,类名以 RemoteService 结尾,比如 ArticleRemoteService。
BIZ 层
bo:业务对象包名,类名以 BO 结尾,比如 ArticleBO。
convert:实体类转换包名,类名以 Convert 结尾,比如 ArticleBOConvert。
dataobject:数据对象(与表对应)包名,类名以 DO 结尾,比如 ArticleDO。
enums:枚举包名,类名以 Enum 结尾,比如 ArticleStatusEnum。
manager:三方操作管理(RPC/Http/缓存)包名,类名以 Manager 结尾,比如 UserManager。
service:业务类包名,类名以 Service 结尾,比如 ArticleService。实现类放入子包 impl 里面,类名以接口名开头+Impl 结尾,比如 ArticleServiceImpl。
config:配置包名(Nacos 配置),类名以 Config 结尾,比如 ElasticSearchIndexConfig。
param:业务层参数包名,类名以 Param 结尾,比如 ArticleIndexSaveParam。
document:文档(MongoDB,ElasticSearch)对象包名,类名以 Document 结尾,比如 ArticleDocument。
handler:定时任务类名以 Handler 结尾,比如 EsIndexBuildHandler。
PROVIDER 层
convert:实体类转换包名,类名以 Convert 结尾,比如 ArticleBOConvert。
service:API 接口实现包名,类名以 API 接口名开头+Impl 结尾,比如 ArticleRemoteServiceImpl。
服务启动类以 ProviderApp 结尾。
方法名定义规范
get:单条数据获取方法名以 get 开头,比如 getArticle。
list:多条数据获取方法名以 list 开头,比如 listHotArticles。
save:数据保存方法名以 save 开头,比如 saveComment。
remove:数据删除方法名以 remove 开头,比如 removeComment。
search:ES 搜索以 search 开头,比如 searchArticle。
注释规范
类注释:必须要有,说明类的作用。
/*** 评论业务接口** @作者 尹吉欢* @个人微信 jihuan900* @微信公众号 猿天地* @GitHub https://github.com/yinjihuan* @作者介绍 http://cxytiandi.com/about* @时间 2020-02-13 20:44:04*/
方法注释:必须要有,说明方法的作用。
/*** 保存评论* @param param 评论参数* @return 评论ID*/
String saveComment(CommentSaveParam param);
字段注释:必须要有,说明字段的作用。
/*** 评论保存参数** @作者 尹吉欢* @个人微信 jihuan900* @微信公众号 猿天地* @GitHub https://github.com/yinjihuan* @作者介绍 http://cxytiandi.com/about* @时间 2020-02-13 20:44:04*/
@Data
public class CommentSaveParam {/*** 评论内容*/private String content;/*** 评论业务类型*/private int commentBizType;/*** 评论业务ID*/private String commentBizId;/*** 评论业务的用户ID*/private Long commentBizUserId;/*** 用户ID*/private Long userId;
}
参考资料
[1]
kitty-cloud: https://github.com/yinjihuan/kitty-cloud
关于作者:尹吉欢,简单的技术爱好者,《Spring Cloud 微服务-全栈技术与案例解析》, 《Spring Cloud 微服务 入门 实战与进阶》作者, 公众号 猿天地 发起人。个人微信 jihuan900, 欢迎勾搭。
相关推荐
双剑合璧的开源项目Kitty-Cloud
Kitty-Cloud环境准备
Kitty-Cloud服务搭建过程剖析
扫下面的码加技术群,广告勿扰
如有收获,点个在看,诚挚感谢
这篇关于Kitty-Cloud中的编码规范的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!