统一开发工具配置

简介: 理论上无论使用哪个工具都可以,但是之前遇到过这样的情况,有人习惯使用 Eclipse 的自动格式化代码,每次提交代码都有一大堆的变化,仔细对比过后才发现仅是格式变化了,或是 improt 顺序变化了等等,多人提交代码时产生冲突,其实只是格式风险不一样,为了排除类似这样的困扰,使大家编码风格统一,所以,统一使用 IDEA 作为开发工具,代码格式和注释格式统一化。

为什么要统一开发工具


理论上无论使用哪个工具都可以,但是之前遇到过这样的情况,有人习惯使用 Eclipse 的自动格式化代码,每次提交代码都有一大堆的变化,仔细对比过后才发现仅是格式变化了,或是 improt 顺序变化了等等,多人提交代码时产生冲突,其实只是格式风险不一样,为了排除类似这样的困扰,使大家编码风格统一,所以,统一使用 IDEA 作为开发工具,代码格式和注释格式统一化。

统一编码


采用 4 个空格缩进,禁止使用 tab 字符。

说明:如果使用 tab 缩进,必须设置 1 个 tab 为 4 个空格。IDEA 设置 tab 为 4 个空格时, 请勿勾选 Use tab character;而在 Eclipse 中,必须勾选 insert spaces for tabs。

IDE 的 text file encoding 设置为 UTF-8;IDE 中文件的换行符使用 Unix 格式,不要使用 Windows 格式。

自动导包


Auto Import 功能可以帮助我们自动删除无用的包(未被引用的),以及自动 Import 填充尚未导入的包。完全智能化地帮助我们在开发程序时,省略了导包的操作,大大优化了开发的效率。

设置步骤:Preferences→Editor→General→Auto Import

勾选:

  • Add unambiguous imports on the fly:快速添加明确的导入。
  • Optimize imports on the fly:快速优化导入,优化的意思即自动帮助删除无用的导入。

image-20211026150626945

自动导包 * 号问题


刚使用 IDEA 会发现,Import 相同包下很多类的时候,IDEA 会自动用 * 代替。

为了保持代码和原来在 Eclipse 里(不使用 * 代替)写的一样,可以做如下设置。

找到:Preferences→Editor→Code Style→Java→Imports

配置:

  1. 将 Class count to use import with ““:改为 99(导入同一个包的类超过这个数值自动变为
  2. 将 Names count to use static import with “*”:改为 99(同上,但这是静态导入的)
  3. 将 Package to Use import with “*“:删掉默认的这两个包(不管使用多少个类,只要在这个列表里都会变为 )

image-20211026150819638

Import 导入包顺序调整


项目开发工具从 Eclipse 迁移到 IDEA,由于 IDEA 的 Import 包顺序和原来 Eclipse 的不一致,导致每次对比文件 Import 部分都有变动。

可以调整 IDEA 的导包顺序和 Eclipse 一致:

找到:Settings→Editor→Code Style→Java→Imports

修改 Import Layout 顺序为:

import java.*
import javax.*
空行
import org.*
空行
import com.*
空行
import all other imports
空行
import static all other imports

参考:https://www.jianshu.com/p/dab337159b83

IDEA代码格式化


插件安装


因阿里提供的代码格式化配置是基于 Eclipse 的,如需在 IDEA 中使用此配置,需要安装Eclipse Code Formatter插件,并把配置文件导入。

image-20211026154224426

配置代码格式化文件模板


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

将代码格式化文件 eclipse-codestyle.xml,配置到插件中:

image-20211026160000282

代码格式化使用


(1)格式化部分代码

选中需要格式化代码,快捷键:win->ctrl+alt+L   mac->option+command+L

(2)格式化整个文件

在需要格式化的文件中,快捷键:win->ctrl+alt+L  mac->option+command+L

(3)格式化整个项目(慎用)

IDEA 中,项目上右键->Reformat Code

如已经存在的项目初次使用统一的代码格式化,建议在一个时间点将整个项目统一进行一次代码格式化。避免单独的格式化,导致部分研发人员的代码合并出现严重冲突。

注释模板


配置类注释模板


image-20211026161700094

新建类进行测试,输入类名,如下图

image-20211026165916778

比之前多了一步,需要输入类的描述信息,如下图

image-20211026165953523

生成类的效果,如下图

image-20211026170027981

配置 Live Template,配置好之后在类上输入 cc 然后回车就自动增加类注释

image-20211026171144255

配置方法注释模板

image-20211026162708756image-20211026171352768

配置参数


// user
user()
// date
date("yyyy/MM/dd")
// time
time("HH:mm")
// param
groovyScript("if(\"${_1}\".length() == 2) {return '';} else {def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList();for(i = 0; i < params.size(); i++) {result+='\\n' + ' * @param ' + params[i] + ' '}; return result;}", methodParameters());
// return
methodReturnType()

使用


在类上输入 cc 后,按下回车键,即可在类上方生成类注释

在方法上输入 fn 后,按下回车键,即可在方法上方生成方法注释

相关文章
|
1月前
|
存储 运维 监控
项目中如何统一日志管理
在项目中统一日志管理,首要的是建立统一的日志标准、提供统一的日志服务、使用日志管理工具进行日志收集、分析和查询。
57 1
|
4月前
|
存储 分布式计算 大数据
大数据架构管理规范
8月更文挑战第18天
84 2
|
6月前
|
消息中间件 存储 中间件
中间件使用统一的标准和协议
【6月更文挑战第2天】
70 1
|
7月前
当需求范围不统一的时候该怎么办?
当需求范围不统一的时候该怎么办?
|
7月前
|
算法 搜索推荐 C++
统一结果封装
统一结果封装
36 0
|
安全 前端开发 中间件
4A 统一安全管控组件介绍
4A 统一安全管控组件介绍
1206 0
4A 统一安全管控组件介绍
|
安全 前端开发 中间件
云巧核心组件巡礼 - 4A 统一安全管控组件
its better to run than curst the road初心相信很多小伙伴在刚刚接触项目交付时会发出相同的感慨项目交付的低水平。我们提出为企业做全面数字化转型很多年了。 但是在项目实际执行的过程中,常常的会陷入劳动密集型的堆人,堆代码的节奏中。 代码缺乏设计,稳定性听天由命。项目沉淀难因为项目 deadline 的紧迫,往往能成功交付便万事大吉。 虽然希望可以在项目中沉淀一些能力
云巧核心组件巡礼 - 4A 统一安全管控组件
|
运维 监控 网络协议
统一运维监控平台设计思路
一、 监控平台的思路 二、 ganglia的安装 三、 yum方式安装ganglia
统一运维监控平台设计思路
【TP5项目统一规范】对于错误码统一使用
【TP5项目统一规范】对于错误码统一使用
118 0
【TP5项目统一规范】对于错误码统一使用
|
存储 数据采集 运维
微服务之后,如何处理数据的统一分析(类似报表)
微服务之后,如何处理数据的统一分析(类似报表)
847 0
微服务之后,如何处理数据的统一分析(类似报表)