开发的那些事


前言

提示:这里可以添加本文要记录的大概内容:

关于如何在项目中保持干净的代码编写和学习好的技术


提示:以下是本篇文章正文内容,下面案例可供参考

一、如何保证代码的整洁

1、数据库

首先从数据库设计开始,就要保证你的数据库设计规范,字段选型正确,数据库表名起的让人能一眼看出这张表是干什么的,字段的注释,类型的相关注释,都要遵循阿里巴巴的Java开发规范,或者说保持你自己的一种规范原则。而不是说随意创建,随意起名,不规范的数据库设计,会导致你在开发阶段频繁的添加或删除字段,写代码的时候不知道该库的作用,也给后来的维护和后续人的开发带来了不便。

规范的数据库设计:

在这里插入图片描述在这里插入图片描述规范的数据库设计,不仅让人眼目一新,而且在开发的时候会省下许多不必要的麻烦和时间,也为后续的维护和后续人员的参与开发节省下许多时间。

2、分支的开发

对于目前项目中,代码关联,还是通过git实现团队的代码管理和开发,针对每次进行任务而定自己的分支名,像一些公司可能要求,修改bug的分支叫fix-bug,开发的分支叫某某功能开发,这也是一种潜移默化的规范,这样不仅能很快的分辨出你这个分支是干什么的,也可以杜绝出现事故时,无法准确的回滚。
如:
在这里插入图片描述通过日期和功能,就能很快的定位到哪个分支的问题,也能很清楚的分别出你这个分支是干什么的,避免了很多不必要的麻烦,当然如果你在本地都是一个分支开发提交,那么你也不要忘记了在提交的时候,先拉取一下主分支代码,然后合并到本地哦!
在这里插入图片描述

3、代码的编写

3.1、结构

规范的包结构,有助于你快速找到对应的代码和工具,不仅提高自己的开发效率,而且保证功能多得时候,或时间过长之后,可以让你知道该功能在哪个下面,该接口的实体类,实现,返回,工具类,在哪里。
如:Entity层(实体层)、Dao层(数据库访问)、Service层(业务处理)、Util(工具类)等

Controller:用于放置控制器相关的代码。这些代码主要负责处理用户请求,调用服务层的方法,并返回响应数据。
Service:用于放置业务逻辑层的代码。这一层主要负责实现具体的业务逻辑,它通常会调用数据访问层的方法来获取或存储数据。
Entity:用于放置实体类,即数据模型。这些类通常对应数据库中的表,用于映射和传输数据。

具体到项目结构,一个典型的Spring Boot项目可能会遵循以下目录结构:

src/main/java:放置项目的Java源代码。
src/main/resources:放置项目的静态资源和配置文件。
src/test/java:放置项目的测试用例代码。

在src/main/java目录下,代码的组织结构通常如下:

com.xxx.xxx.controller:放置Controller相关的代码。
com.xxx.xxx.service:放置Service相关的代码。
com.xxx.xxx.entity:放置Entity相关的代码。

此外,包名应全部使用小写字母,以点(.)分隔不同的层级。包的结构应该反映出代码的逻辑层次,通常是按照功能、模块或者组件来组织。

总之,需要注意的是,并没有一套通用的标准,不同公司或团队的使用习惯和规范也不尽相同。上述结构只是一种典型的、被广泛采用的项目结构示例。实际项目中,应根据项目的具体需求和团队的开发习惯来调整项目结构。

3.2、类名的规范

在项目中,针对我们的类名,最好的起名方式是简洁又能让人知道这个类是干嘛的。在实际编程中,遵循这些命名规范可以使代码更加整洁、易于理解和维护,不仅是自己看着舒服,别人接手或进行维护的时候也会很方便,这样就极大地节约了团队的开发时间。

命名规则:类名必须以字母或下划线开头,不能以数字开头。如果类名包含多个单词,应使用驼峰式命名法,即每个单词的首字母大写,其余字母小写。例如,TestPage或XMLExample。
命名建议:类名应该是名词,而不是动词或形容词,以准确反映类的功能或特性。类名应该简洁明了,具有代表性,避免使用过于复杂或模棱两可的名称。

此外,类名中不应使用Java的关键字或保留字,也不应包含除下划线和美元符号以外的任何特殊字符或空格。同时,类名应该能够体现类的职责和功能,有助于提高代码的可读性和可维护性。

3.3、代码编写的规范

在编写代码的时候,首先在方法名上面你就得让人明白你这个方法是干什么的,如:新增的时候,就写add或save,修改的时候就写update,删除的时候就写delete,这样以功能命名的方法名,不仅让人一眼就能看出这个接口是干嘛的,也能让你后续时间过长,而不知道自己所写的功能。

同样建议在编写代码的时候写清相关的代码注释,这样不仅有助于你梳理代码相关逻辑,也可以为后来的人提供便利,这样也不会因为时间过长,而忘记自己功能代码的逻辑。

关于注释同样在使用时也要规范使用
单行注释:使用双斜杠(//)开头,后面跟着注释内容。例如:
// 这是一个单行注释
int a = 10;
多行注释:使用斜杠星号(/)开头,星号斜杠(/)结尾。例如:
/*
 * 这是一个多行注释
 * 可以跨越多行
 */
int a = 10;
文档注释:使用斜杠星号(/**)开头,星号斜杠(*/)结尾。这种注释通常用于生成API文档。例如:
/**
 * 这是一个文档注释
 * 用于生成API文档
 */
public class MyClass {
    // ...
}

注释的内容应该简洁明了,能够清晰地表达代码的功能和意图。避免使用过于复杂的词汇和句子结构。 注释应该与代码保持同步更新,如果代码发生变化,注释也应该相应地更新。 对于公共方法和类,应该提供详细的文档注释,以便其他开发人员了解其功能和用法。对于复杂的算法和逻辑,可以使用注释来解释其实现原理和关键步骤。

代码中也应该要避免魔法数字的出现,相关的常量,过多的话可以写一个常量类,不多的话,可以在接口处,定义常量。
  1. 声明常量:在Java中,使用final关键字来声明一个常量。这意味着一旦常量被初始化,它的值就不能被改变。
  2. 命名规范:常量名应该全部使用大写字母,并且在单词之间用下划线分隔。例如,MAX_VALUE、PI和MESSAGE是符合规范的常量名。
  3. 赋值要求:常量必须在声明时或在每个构造方法的首次执行前被赋予初始值。
  4. 类型限制:常量可以是任何基本数据类型,也可以是对象引用,但是对象引用常量必须指向不可变的对象。
  5. 使用场景:常量通常用于表示不会改变的值,如数学中的圆周率PI,或者配置项中的最大值MAX_VALUE等。
  6. 避免魔法值:在代码中应避免使用硬编码的值(即所谓的“魔法值”),而是通过定义常量来提高代码的可读性和可维护性。
  7. 访问控制:根据需要,常量可以声明为public、protected、private或默认包级别访问权限。
  8. 静态属性:如果常量是属于类的,通常会将其声明为static,这样它们就可以在不创建类实例的情况下被访问。
    如:
    在这里插入图片描述

4、其他

其实IDEA中自带的就有代码整理格式的功能,只需要在相关代码片段中选择即可。
在这里插入图片描述或者你也可以下载相关的插件如:
阿里巴巴的代码规范扫描。用于检查当前类自己是否有不规范的地方。
在这里插入图片描述

总结

当然这只是我个人有代码洁癖,对代码的规范要求比较格式化,因为我觉得在项目中,规范的数据库设计,规范的包结构,规范的类名和方法名,代码逻辑的注释,重复代码的提取,工具类等等,这些规范不仅让我得代码耳目一新,并且对于日后新人进来,学习相关的代码,日后的维护,都是有很大的帮助,当然,毕竟每个公司,每个人的要求不一致,所以大家仅供参考,当然大家如果有好的建议可以分享出来,共同进步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值