开发命名规范

Java开发项目的命名规范+命名方法+注释规范 变量名通常以小写字母开头。如果变量名由多个单词构成,从第二个单词开始首字母需要大写(小驼峰命名法)。变量名中不建议使用下划线作为前缀或者单词之间的分隔符 阅读详情

1项目命名规范

1、工程项目名,尽量想一些有意义、有传播价值的名称;比如星球、游戏、名人、名地名等;取名就跟给孩子取名一样,独特、有价值、有意义、好传播
2、所有的类都必须添加创建者和创建日期
3、所有代码:包括项目代码、测试代码、临时性代码、脚本统统加入Git仓库进行版本管理,避免误删除、误操作丢失
4、项目需要有单元测试,测试覆盖度50%,测试代码放到单独的src/test/java工程目录下,单测也要入Git仓库管理

2项目目录结构规范

项目名称-admin //web端服务接口(面向浏览器前端的后端接口服务)、定时任务等

项目名称-service //rpc微服务工程,

项目名称-api //终端api接口(面向外部接口,比如APP)

项目名称-common //公共模块

项目名称-web //vue前端工程

项目名称-client //给其它业务依赖参数,接口定义工程,feign接口调用

 

image.png

3.项目业务模块包命名  caes为公司英文简称,实际需求替换

com.caes.项目名.模块名.controller

com.caes.项目名.模块名.feign

com.caes.项目名.模块名.service

com.caes.项目名.模块名.dao

com.caes.项目名.模块名.entity

com.caes.项目名.模块名.vo

com.caes.项目名.模块名.dto

com.caes.项目名.模块名.param

com.caes.项目名.common.listener

com.caes.项目名.common.config

4代码命名规范

1、无特殊要求,后端项目一律采用以SpringBoot框架。

2、代码中的命名均不能以下划线或美元符号开始,更不允许直接使用中文的方式。代码中的命名避免使用拼音与英文混合的方式。

3、类名使用UpperCamelCase风格,必须遵从驼峰形式,但以下情形例外:DO / BO / DTO / VO / AO

4、方法名、参数名、成员变量、局部变量都统一使用 lowerCamelCase 风格,必须遵从驼峰形式

5、常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚准确,细粒度,不要嫌名字长;比如MAXCOUNT适当细分为MAXXXXCOUNT,MAXYYY_COUNT

6、抽象类命名使用 Abstract 或 Base 开头;异常类命名使用Exception结尾;测试类命名以它要测试的类的名称开始,以Test结尾

7、POJO类中布尔类型的变量,都不要加is,否则部分第三方框架解析会引起序列化错误

8、包名统一使用小写,点分隔符之间有且仅有一个自然语义的词汇

9、杜绝不规范的简写,避免望文不知义;比如configure简写为config、cfg、conf都可以,con就不合理

10、如果模块、接口、类、方法使用了设计模式,在命名时体现出具体模式;比如OrderFactory,AgentProxy

11、枚举类名建议带上 Enum 后缀,枚举成员名称需要全大写,单词间用下划线隔开

12、领域模型命名规约:

数据对象:xxxPO,xxx即为数据表名, 对象属性和表字段对应;

数据传输对象:xxxDTO,xxx为业务领域相关的名称,前端向后端传递对象,FEIGN调用,及其他数据对象传输统一使用DTO后缀;

展示对象:xxxVO,xxx一般为view名称;

业务处理对象:xxxBO,xxx为业务领域相关的名称.

其它规范

1后端代码规范

后端开发必须安装Java阿里代码规范插件,并启用检查代码,对于不符合规范的拒绝提交。
IDEA安装该插件
打开IDEA,File-> Setteings->Plugins->Browse Repositories,在Browse Repositories搜索栏搜索Alibaba,然后安装Alibaba Java Coding Guidelines
下载本地zip文件,下载地址:Alibaba Java Coding Guidelines - IntelliJ IDEs Plugin | Marketplace
下载版本 Alibaba Java Coding Guidelines 2.1.1
打开IDEA,File->Settings->Plugin->Install plugin from disk,选择刚才自己下载插件zip包的地址

2日志规范

日志很重要,需要统一定义日志格式规范
1、必须要有日志、必须要有日志、必须要有日志
2、日志要能清晰反映程序运行状态、上下游链路调用处理过程、核心逻辑
3、日志必备字段:日志级别、时间戳、服务名、IP、调用方、TraceId、日志主体
4、谨慎记录日志,生产环境避免输出debug日志,有选择地输出 info 日志,注意日志输出量的问题,避免无意义的大段不可阅读的日志。大量地输出无效日志,不利于系统性能提升,也不利于快速定位错误点

3接口规范

接口设计原则

接口设计应立足于本服务自身,服务核心提供什么对外的能力,接口用于匹配自身的能力,接口设计以通用为准,避免被需求牵着走,提供一大堆极度相似的接口给维护带来困难。
接口设计需考虑安全问题及权限问题,接口设计需避免可遍历的访问
接口的入参必须检查及有效性验证,非法参数必须拒绝,并返回相应错误信息
部分接口,需有防重限制,访问量限制,验证码限制等,避免被滥刷,造成资损

接口规范参考:《RestfulL API规范》

4数据库规范

数据库开发规范参考:《MYSQL数据库涉及规范》

5前端开发规范

1、无特殊要求,前端项目一律采用基于 @caes/caes-frontwork前端框架。

2、项目名称全部采用小写,以下划线或者短横线分割。如official-website,目录命名全部采用小写,以短横线分割。有复数结构时,要采用复数命名法。

3、详细规范遵循: 《WEB端编码规范》

项目开发代码规范和命名规范 规范的用途: 编码规范第一、能使你的代码更加易于维护,程序并不是一次性的产品,它需要扩展和修改还有维护的。但是进行这次操作的人并一定就是你了,所以你为了你的接班人也要将规范编码进行到底! 编码规范第二、可以提高代码质量,谁编程都不是一次性完成的,是需要不断的测试与调试,以各种状态来修改自己的代码,而将代码规范化,就能对程序本身有更加清晰的结构思路,从而减少调试而成为快捷高效的代码。 编码规范第三、也是最为重要的是将你本身个性化溶于团队化的过程,当你熟练运用编码规范了,就等于在以后的职场的道路上更加宽广。 编码规范是一种习惯,所以一开始习惯不养好,永远写不出工程型代码。 立即下载

相关推荐

C#开发命名规范.pdf

C#开发命名规范.pdf。感谢这位博主。原链接地址:http://blog.youkuaiyun.com/chenhongwu666/article/details/35354247。

10分钟了解代码命名规范(Java、Python)

前言 关于代码命名,我相信是经常困扰很多小伙伴的一个问题,尤其是对于强迫症晚期患者。怎么说呢,每次小编在写代码之前,总会在想啊想啊,用什么命名法好呢?对于经常在C++、Java、Python等主流语言上切换的强迫症来说,换个语言换种命名风格简直不要太混乱。 今天就来梳理一下常见的代码命名规范以及适用范围吧。 常见命名规范 为什么需要命名规范呢?世界级软件大师 Martin Fowler 大神都说过 CS 领域有两大最难的事情,一是缓存失效,一是程序命名。 《Clean Code》这本书明确指出: 代码的

infinitor的博客 1373

ffmpeg(一) ffmpeg+QT开发环境搭建

(exe 程序编译的时候只需要包含 xxx.dll.a 静态导入库,运行的时候才需要 xxx.dll 文件)这个 .pro 文件的配置,是指导程序编译的时候,可以找到对应的动态库。值得一提的是,在Windows中,静态链接库(Static Link Library)的扩展名也是.lib、.dll.a。其实只要你掌握了FFmpeg,也可以很快上手其他音视频开发库,因为底层原理都是一样的,你最终操作的都是一样的数据,比如MP3、MP4文件。导入库:不包含函数的具体实现代码(函数的具体实现代码存储在dll中)

小道士写程序 8202

【编程规范】一文讲解开发中的命名规范

好的代码本身就是注释, 所以我们需要统一命名风格。​ 在本文中,将从大到小,从外到内,总结Java编程中的命名规范。文中将会涉及到日常工作中常见的命名示例,如包命名,类命名,接口命名,方法命名,变量命名,常类命名,抽象类命名,异常类命名以及扩展类命名等。我将按照项目工程目录结构,从包,类(接口,抽象类,异常类),方法,变量和常量的顺序展开介绍。

qq_43783527的博客 2160

BCM-BCP-DRP-运维管理之故障管理——故障的分类与处理流程

ITSM Business Continuity Manage(BCM) BusinessContinuityPlan(BCP) 偏业务 DisasterRecoveryPlan(DRP) 偏IT 天塌了,考虑在天塌了的状态下做什么,怎么开展业务就是BCP; 天塌了,考虑怎么把天撑回去,就是DRP。 DRP+BCP+供应链管理+危机管理等就是BCM (业务连续性管...

mmgithub123的博客 2720

单片机NTC热敏电阻测温:六种实用电路方案与选型指南

本文详细介绍了单片机系统中NTC热敏电阻测温的六种实用电路方案,包括分压法、恒流源法、RC充放电法、电桥法、频率法及集成专用IC方案,并提供了关键的硬件选型指南和软件处理技巧,帮助工程师实现高精度、低成本的温度测量。

herb5的博客 815

开发命名风格规范

1.代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。 2.所有编程相关的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。 3.类名使用 UpperCamelCase 风格 4.方法名、参数名、成员变量、局部变量都统一使用 lowerCamelCase 风格。 5.常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。 6.抽象类命名使用 Abstract 或 Base 开头;异常类命名使用 Exception 结尾;测试类 命名以它要测试的类的名称开

weixin_48811255的博客 648

proteus仿真51单片机操作指南:串口通信仿真配置详解

深入讲解如何在proteus仿真51单片机中实现串口通信,涵盖虚拟串口设置、电路连接与调试技巧,帮助开发者高效完成通信仿真验证。

weixin_36197669的博客 569

软件开发常用命名规范

本次将参照阿里的代码分层规范与命名规范做一次整理。

weixin_48088839的博客 1957

【数据同化第二期】数据同化中三大理论基础之一(最小方差估计)

【数据同化第二期】深入理解数据同化及经典案例(最小方差估计)

WW、forever的博客 1596

Unreal5 从入门到精通之 学习Niagara特效系统

UE5 Niagara粒子系统解析 Niagara是UE5中的高性能粒子特效系统,相比传统粒子系统具有完全可编程性和可视化节点编辑两大特点。核心单元发射器(Emitter)分为模板发射器(预设效果如喷泉、火焰)和空白发射器(高度自定义)。系统提供13种预设模板,包括吹飞粒子、五彩纸屑爆发、动态光束等常见特效。 Niagara采用三级模块化设计: 系统级:全局参数设置与更新 发射器级:控制粒子生成规则与行为 粒子级:处理单个粒子的生命周期和渲染 关键模块包括初始化粒子属性、物理模拟、颜色渐变等,支持GPU加速

TxNet 1119

Android 开发命名规范

Android 开发命名规范

箫尘的博客 538

【赛题解析&命令脚本配置】2023年全国职业院校技能大赛GZ073网络系统管理赛项赛题第9套模块A:网络构建 & (三)无线网络配置+(四)出口网络配置-命令配置

【赛题解析&命令脚本配置】2023年全国职业院校技能大赛GZ073网络系统管理赛项赛题第9套模块A:网络构建 & (三)无线网络配置+(四)出口网络配置-命令配置

君逍遥o 1017

Java 开发与命名规范

java开发规范

weixin_51429644的博客 1283

雨雾天YOLOv8检测拉胯?暗通道去雾+上下文注意力双优化,mAP从58%飙到79%,暴雨也能看清车牌

室外交通监控:高速、省道的雨雾天检测,重点解决小车、货车漏检;车载ADAS系统:雨天行车时的前方车辆、行人识别,需实时性(<40ms);隧道出入口:明暗交界+雾天的复杂场景,暗通道能平衡亮度。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1379

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Oracle开发命名规范

作为开发人员来说,最

Captain_Yi 1272

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

前开发命名规范

作为一个程序员,对英语一定要有一个学习,毕竟使用英语写的页面 css命名规范 1.css class命名尽量使用英语,不要使用汉拼,并且有意义, 2.使用单词命名时不要缩写,除非非常有名的单词。 3.- 规则命名中,一律采用小写加中划线的方式,不允许使用大写字母或 _ 例如(header-list) 4.不允许通过1、2、3等序号进行命名 5.避免class与id重名 css编写...

技术分享 402

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

前端鸿蒙开发 命名规范

HTML/CSS文件:命名以字母开头而不是数字,且字母一律小写,以中划线连接且不带其他标点符号。JS/TS 文件:以小写字母命名,多个单词以下划线连接,例如 util.js、util_helper.js。getItemsBySelected //根据传入的已选列表ID来获取列表全部数据。私有属性和方法:前缀为_(下划线),后面跟公共属性和方法一样的命名方式。原则上公有接口的命名为首字母大写,私有接口的命名为首字母小写。flatSelect //展开选择数据。

Ruiqi8的博客 715

java开发命名规范

java开发命名规范 使用前注意事项: 1、  由于Java面向对象编程的特性, 在命名时应尽量选择名词 2、  驼峰命名法(Camel-Case): 当变量名或函式名是由一个或多个单字连结在一起,而构成的唯一识别字时,首字母以小写开头,每个单词首字母大写(第一个单词除外)。    如:myFirstName 一 包名的书写规范 (Package) 1.1 一般要求 1、选择有意义的

Johnny Huang的博客 690

android接口类命名规范_Android开发命名规范

刚开始进行android开发时候,命名都是按照拼音来,所以有的时候想看懂命名的那个控件什么是什么用的,就要读一遍甚至好几遍才知道,这样的话,在代码的审查和修改过程中就会浪费不少不必要的时间。如果就是我一个人开发,一个人维护的话还好,可是如果一个项目是团队分工合作,这样让你的同事去看你的代码就更加吃力了,因为大家之间的编程方式不一样,所以,在开发过程中,命名规范统一尤为重要,最好是团队中统一好大家命...

weixin_39910523的博客 246

JAVA后端开发——类命名规范

一致性是首要原则: 在一个项目中,务必遵循同一种命名风格。见名知意: 类名应清晰地反映其职责,避免使用模棱两可或过于简写的词语。例如 CreateUserRequest 远胜于 CrtUsrReq。遵循Java驼峰命名法: 类名使用大驼峰(PascalCase),例如 HotProductController。对于缩写词,将其视为一个普通单词处理,例如 Dto、Vo、Url,而非 DTO、VO、URL。参考现有代码: 在加入一个新项目时,花时间阅读已有的代码,了解并遵循项目既有的命名规范。

tybAly的博客 1314

java开发命名规范总结

驼峰命名法(Camel-Case): 当变量名或方法名是由一个或多个单词连结在一起,而构成的命名时;首字母以小写开头,每个单词首字母大写(第一个单词除外)。

温故而知新,可以为师矣。 2861

前端开发命名规范

前端开发命名规范 一.普通变量的命名 1.采用小驼峰式命名法则,即第一个单词字母小写,其余单词首字母大写 2.命名相关 3.复数 + s 二.常量 首字母大写,多个单词用“_”连接,例如:Top_Content 三.css类名命名 单词均小写,多个单词用“-”连接,例如:left-content 尽量命名相关,不要采用a,b,c等等 四.关于Vue的命名规范 (一)组件命名 1.大驼峰式命名,即第一个单词首字母大写,其余单词均小写 2.也可采用多个小写单词+“-”连接 注意:不能使用保留字、关键字,例如i

qq_40785977的博客 698
上一篇: 代码评审(Code Review)规范
下一篇: RESTfulAPI规范
shadow_zed
博客等级 码龄10年 6289粉丝 68原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值