Arnold's Blog Arnold's Blog
🏠首页
  • Java
  • Python
💻前端
🕸️周边技术
🗒️札记
  • Tips
  • 读书
  • 友情链接
🧑‍💻关于
🔖收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Arnold Shu

知人者智,自知者明。胜人者有力,自胜者强。
🏠首页
  • Java
  • Python
💻前端
🕸️周边技术
🗒️札记
  • Tips
  • 读书
  • 友情链接
🧑‍💻关于
🔖收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Tips

    • 计算机常用存储单位
    • IDEA Alibaba规范化模板(代码格式化,注释模板化,常用自定义快捷键)
      • 背景
      • 代码格式话模板配置(非必要配置,也可直接使用IDEA默认格式化即可)
      • IDEA代码注释模板配置
        • 类注释模板配置
        • 接口注释模板配置
        • 枚举注释模板配置
        • 注解注释模板配置
        • 方法注释模板配置
      • 注意点
        • Class注释成功标准图示
        • Interface注释成功标准图示
        • Enum注释成功标准图示
        • @interface注释成功标准图示
        • 方法注释成功标准图示
      • 常用自定义快捷键
        • 快速新建Class
        • 快速集合判空(collection is empty)
        • 快速集合非空(collection is not empty)
        • 快速String非空(string is not empty)
        • 快速String非空格(string is not blank)
      • 最后参考链接
    • 设计模式的七大原则
    • 公司团队规范研发流程概要
    • 埋点技术可行性初探
    • 经典设计模式
    • IDEA 使用技巧
  • 读书

  • 友情链接
  • more
  • Tips
Arnold Shu
2023-04-19
目录

IDEA Alibaba规范化模板(代码格式化,注释模板化,常用自定义快捷键)

# 背景

本文意在将IDEA中的代码格式和注释格式进行统一化。 研发团队的成员的代码格式和注释格式统一化。 统一的代码格式和注释格式,能给代码阅读上带来极大的便利,给代码改动上提高极大的效率。

# 代码格式话模板配置(非必要配置,也可直接使用IDEA默认格式化即可)

阿里模板下载地址 https://github.com/alibaba/p3c/tree/master/p3c-formatter (opens new window)

  1. 下载阿里配置文件(eclipse-codestyle.xml),因为此文件是针对ecplice的,在IDEA中使用配置文件,需要安装Eclipse Code Formatter插件 在这里插入图片描述
  2. 配置代码格式,File->Settings->Other Settings->Eclipse Code Formatter进行idea代码格式配置:将代码格式化文件eclipse-codestyle.xml,配置到插件中:在这里插入图片描述

# IDEA代码注释模板配置

为了减少警告以及更好的集成统一API的文档第三方工具,我们严格按照java文档注释 (opens new window)来配置相关的模板配置。

# 类注释模板配置

IDEA配置导航地址:settings->Editor->File and Code Templates->Files->class 在这里插入图片描述 类注释模板(注释模板的上的空行也算是模板的一部分不要更改,复制到指定位置并且一定保持与给出的模板一模一样,换行以及*以及*号之间的空格都要一一对应)



/**
 * ${NAME} ${description} 
 * @author ${USER} 
 * @version ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
**/
public class ${NAME} {
}
1
2
3
4
5
6
7
8
9

# 接口注释模板配置

IDEA配置导航地址:settings->Editor->File and Code Templates->Files->Interface 在这里插入图片描述 接口注释模板(注释模板的上的空行也算是模板的一部分不要更改,复制到指定位置并且一定保持与给出的模板一模一样,换行以及*以及*号之间的空格都要一一对应)



/**
 * ${NAME} ${description} 
 * @author ${USER} 
 * @version ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
**/
public interface ${NAME} {
}
1
2
3
4
5
6
7
8
9

# 枚举注释模板配置

IDEA配置导航地址:settings->Editor->File and Code Templates->Files->Enum 在这里插入图片描述 枚举注释模板(注释模板的上的空行也算是模板的一部分不要更改,复制到指定位置并且一定保持与给出的模板一模一样,换行以及*以及*号之间的空格都要一一对应)



/**
 * ${NAME} ${description} 
 * @author ${USER} 
 * @version ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
**/
public enum ${NAME} {
}
1
2
3
4
5
6
7
8
9

# 注解注释模板配置

在这里插入图片描述 注解注释模板(注释模板的上的空行也算是模板的一部分不要更改,复制到指定位置并且一定保持与给出的模板一模一样,换行以及*以及*号之间的空格都要一一对应)



/**
 * ${NAME} ${description} 
 * @author ${USER} 
 * @version ${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE}
**/
public @interface ${NAME} {
}
1
2
3
4
5
6
7
8
9

# 方法注释模板配置

IDEA配置导航地址:settings->Editor->Live Templates 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

方法注释模板(注释模板的上的空行也算是模板的一部分不要更改,复制到指定位置并且一定保持与给出的模板一模一样,换行以及*以及*号之间的空格都要一一对应)

 **
  * TODO
 $param$ 
  * @return $return$
  * @author Arnold
  * @throws	      
  *
**/
1
2
3
4
5
6
7
8

Template Variables具体参数对应表达式

Name Expression
time date()
methodName methodName()
param 见下面的引用
return methodReturnType()

上表的param表达式:groovyScript("def result=''; def params="${_1}".replaceAll('[\\[|\\]|\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\r\n' : '')}; return result", methodParameters())

在方法前面输入/m即可看到方法注释自动填充 在这里插入图片描述 在这里插入图片描述

# 注意点

严格按照上述说法配置任然可能导致问题

  • 注释模板中的*号无法对齐成一条直线,你可以自己手动调整确保注释中的*号在一条直线上,好看美观
  • Template Variables中param 无法成功引出参数具体的值

最终以下图展示的为成功配置的标准(由于这个之前模板做了多次调整,可能下图展示的效果和上述模板的不一致,最终都以上述最新的注释模板配置为主)

# Class注释成功标准图示

在这里插入图片描述

# Interface注释成功标准图示

在这里插入图片描述

# Enum注释成功标准图示

在这里插入图片描述

# @interface注释成功标准图示

在这里插入图片描述

# 方法注释成功标准图示

在这里插入图片描述

# 常用自定义快捷键

# 快速新建Class

在这里插入图片描述 Template text 模板:$Clazz$ $obj$ = new $Clazz$($END$);在这里插入图片描述 验证是否成功 在这里插入图片描述

# 快速集合判空(collection is empty)

在这里插入图片描述 Template text 模板:if(CollUtil.isEmpty($VAR$)){ $END$ }

# 快速集合非空(collection is not empty)

在这里插入图片描述 Template text 模板:if(CollUtil.isNotEmpty($VAR$)){ $END$ }

# 快速String非空(string is not empty)

在这里插入图片描述 Template text 模板:if(StrUtil.isNotEmpty($VAR$)){ $END$ }

# 快速String非空格(string is not blank)

在这里插入图片描述 Template text 模板:if(StrUtil.isNotBlank($VAR$)){ $END$ }

# 最后参考链接

IDEA类和方法注释模板设置 (opens new window)
IDEA配置类和方法注释模板 (opens new window)
idea设置注释(类和方法),支持多参数 (opens new window)
idea配置阿里格式化模板+注释模板 (opens new window)
如果再配置过程中有任何问题请及时反馈

​

#IDEA#注释模板
上次更新: 2024/10/15, 14:07:00
计算机常用存储单位
设计模式的七大原则

← 计算机常用存储单位 设计模式的七大原则→

最近更新
01
《领域驱动设计:软件核心复杂性应对之道》书摘
12-26
02
Linux 的常用命令
10-22
03
程序设计中SPI和API
10-22
更多文章>
Theme by Vdoing | Copyright © 2017-2024 Arnold Shu | CC BY-SA 4.0 License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式