Kitty-Cloud中的编码规范

2023-11-05 14:40
文章标签 cloud 编码 规范 kitty

本文主要是介绍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中的编码规范的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/350542

相关文章

MySQL高性能优化规范

前言:      笔者最近上班途中突然想丰富下自己的数据库优化技能。于是在查阅了多篇文章后,总结出了这篇! 数据库命令规范 所有数据库对象名称必须使用小写字母并用下划线分割 所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来) 数据库对象的命名要能做到见名识意,并且最后不要超过32个字符 临时库表必须以tmp_为前缀并以日期为后缀,备份

C++ | Leetcode C++题解之第393题UTF-8编码验证

题目: 题解: class Solution {public:static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num &

C语言 | Leetcode C语言题解之第393题UTF-8编码验证

题目: 题解: static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num & MASK1) == 0) {return

form表单提交编码的问题

浏览器在form提交后,会生成一个HTTP的头部信息"content-type",标准规定其形式为Content-type: application/x-www-form-urlencoded; charset=UTF-8        那么我们如果需要修改编码,不使用默认的,那么可以如下这样操作修改编码,来满足需求: hmtl代码:   <meta http-equiv="Conte

JavaEE7 Servlet 3.1(JSR 340)规范中文版

http://www.iteye.com/news/27727-jinnianshilongnian     Jave EE 7中的部分规范已正式获得批准通过,其中包括JSR340 Java Servlet 3.1规范,去年翻译了该规范,在此分享出来,希望对某些朋友有所帮助,不足之处请指正。   点击直接下载    在线版目录   Servlet3.1规范翻译

4-4.Andorid Camera 之简化编码模板(获取摄像头 ID、选择最优预览尺寸)

一、Camera 简化思路 在 Camera 的开发中,其实我们通常只关注打开相机、图像预览和关闭相机,其他的步骤我们不应该花费太多的精力 为此,应该提供一个工具类,它有处理相机的一些基本工具方法,包括获取摄像头 ID、选择最优预览尺寸以及打印相机参数信息 二、Camera 工具类 CameraIdResult.java public class CameraIdResult {

Java后端微服务架构下的服务网关设计:Spring Cloud Zuul

Java后端微服务架构下的服务网关设计:Spring Cloud Zuul 大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿! 在微服务架构中,服务网关是微服务系统与外部世界的入口点,它负责请求路由、负载均衡、认证、监控等任务。Spring Cloud Zuul是一个基于Spring Boot的网关服务,它为微服务架构提供了一种灵活、高效的网关解决方案。 服务

Python字符编码及应用

字符集概念 字符集就是一套文字符号及其编码的描述。从第一个计算机字符集ASCII开始,为了处理不同的文字,发明过几百种字符集,例如ASCII、USC、GBK、BIG5等,这些不同的字符集从收录到编码都各不相同。在编程中出现比较严重的问题是字符乱码。 几个概念 位:计算机的最小单位二进制中的一位,用二进制的0,1表示。 字节:八位组成一个字节。(位与字节有对应关系) 字符:我们肉眼可见的文字与符号。

Spring Cloud整合Seata实现分布式事务

文章目录 1.Seata1.1 官网1.2 下载1.3 通过安装包运行seata1.3.1 解压seata-server-1.3.0.zip1.3.2 修改 conf/file.conf 配置文件1.3.3 修改conf/registry.conf配置文件1.3.4 添加seata配置信息到nacos1.3.5 配置seata服务端数据库表结构1.3.6 启动seata 2.Spring