插件推荐:如何将Java编码规范落地实际开发中

简介: 阿里近万名Java技术开发者通过不断总结与提炼,并经历了多次大规模一线实战检验及完善,出版了众所周知的《阿里巴巴Java开发手册》,但对于很多人而言,手册始终无法直接应用在日常的开发工作中,如果有相应的IDE插件进行支持,那简直完美。因此,Cloud Toolkit应运而生。

一个软件需要花费80%的生命周期成本去维护。  
几乎没有任何软件的整个生命周期仅由其原作者来维护。
编码规范改善软件的可读性,让工程师更快更彻底地理解新的代码。
如果你将源代码转变为一个产品,那么您需要确保它和你创建的其它产品一样是干净且包装良好的。

借用《Java编程语言代码规范》一段开场白,也许就解释了我们为什么需要编码规范。

无规矩不成方圆,无规范不能协作。阿里近万名Java技术开发者通过不断总结与提炼,并经历了多次大规模一线实战检验及完善,出版了众所周知的《阿里巴巴Java开发手册》,希望使更多的开发者团队在Java开发上更高效、容错、有协作性,提高代码质量并降低维护成本,而手册也尽可能涵盖开发常见环节,包括编程规约、单元测试规约、异常日志规约、MySQL规约、工程规约、安全规约等。

但对于很多人而言,手册始终无法直接应用在日常的开发工作中,如果有相应的IDE插件进行支持,那简直完美。因此,Cloud Toolkit应运而生。

Cloud Toolkit 集成了 Java 代码检查功能。该功能基于《阿里巴巴 Java 开发手册》中的代码规约,执行 Java 代码的静态检查,帮助您在编译前快速发现代码异常,并提供修改建议。

前提条件

已安装 2019.11.1 或更高版本的 Cloud Toolkit 插件。安装方法请参见
[• 在Eclipse中安装和配置Cloud Toolkit
](https://help.aliyun.com/document_detail/29970.html#task-1942357)
[• 在IntelliJ IDEA中安装和配置Cloud Toolkit
](https://help.aliyun.com/document_detail/98762.html#concept-29968-zh)

执行代码检查

1.在 IDE 的 Project 面板上左键单击要检查的工程文件,在弹出的菜单栏中选择 Alibaba Cloud > Coding Guidelines Check。p70195.png

如果您不想检查整个工程,也可以在工程的文件目录中选中想要检查的目录,在右侧代码编辑区域的空白处单击鼠标左键,选择 Alibaba Cloud > Coding Guidelines Check,进行检查。

2.在工程的文件目录区域下方会出现 Inspection Results 面板,可在面板下方看到代码检查进度。
Cloud Toolkit 默认将检查出的错误按照严重程度从高到低分为 Blocker、Critical、Major。Blocker 程度的错误可能会影响代码的成功编译。p70203.png

3.在 Inspection Results 面板的左侧区域显示错误信息目录。p70223.png
单击信息则右侧区域会显示错误代码,部分错误会提供快速修正建议,如下图中的标记 1 所示。Inspection Results 面板各区域功能说明如下。
• 上图标记 2:错误信息目录的最下级节点的行末显示错误代码所在行数 line XX。双击该级节点,则位于Inspection Results 面板上方的代码编辑区会定位到错误代码并高亮显示。
• 上图标记 3 区域内,从左至右,从上至下的按钮功能如下。
• Rerun Inspection:重新执行代码检查
• Group by Severity:按照错误严重程度分组错误信息
• Expand All:将错误信息目录展开至最下级
• Group by Directory:按照目录分组错误信息
• Collapse All:将错误信息目录收起至最上级
• Filter Resolved Items:过滤掉以及修改完成的错误
• Go Prev Problem:在错误目录区域移动至上一条错误
• Autocsroll to Source:打开此功能,在错误目录区域单击错误信息时,代码编辑区自动跳转到错误代码
• Go Next Problem:在错误目录区域移动至下一条错误
• Export:将错误信息导出至本地,可选择导出为 HTML 或 XML 格式
• Edit Settings:编辑错误代码检查的设置文件
• Apply Quickfix:使用快速修正
您可以使用快速修正功能修正代码,也可以手动修改代码。

当然,您可以通过各种形式获取Cloud Toolkit
获取方式:
• IntelliJ IDEA版/PyCharm版本:
https://plugins.jetbrains.com/plugin/11386-alibaba-cloud-toolkit
• Visual Studio Code版本:
https://marketplace.visualstudio.com/items?itemName=alibabacloud-cloudtoolkit.toolkit-vscode
• Eclipse 版本:
https://marketplace.eclipse.org/content/alibaba-cloud-toolkit
• Maven 版本:
https://help.aliyun.com/document_detail/108682.html
使用教程:
https://help.aliyun.com/document_detail/147728.html?spm=a2c4g.11186623.6.541.1958602bbDiHei

相关文章
|
3月前
|
安全 前端开发 Java
《深入理解Spring》:现代Java开发的核心框架
Spring自2003年诞生以来,已成为Java企业级开发的基石,凭借IoC、AOP、声明式编程等核心特性,极大简化了开发复杂度。本系列将深入解析Spring框架核心原理及Spring Boot、Cloud、Security等生态组件,助力开发者构建高效、可扩展的应用体系。(238字)
|
4月前
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
4月前
|
存储 Java 关系型数据库
Java 项目实战基于面向对象思想的汽车租赁系统开发实例 汽车租赁系统 Java 面向对象项目实战
本文介绍基于Java面向对象编程的汽车租赁系统技术方案与应用实例,涵盖系统功能需求分析、类设计、数据库设计及具体代码实现,帮助开发者掌握Java在实际项目中的应用。
177 0
|
5月前
|
安全 Java 数据库
Java 项目实战病人挂号系统网站设计开发步骤及核心功能实现指南
本文介绍了基于Java的病人挂号系统网站的技术方案与应用实例,涵盖SSM与Spring Boot框架选型、数据库设计、功能模块划分及安全机制实现。系统支持患者在线注册、登录、挂号与预约,管理员可进行医院信息与排班管理。通过实际案例展示系统开发流程与核心代码实现,为Java Web医疗项目开发提供参考。
284 2
|
5月前
|
JavaScript 安全 前端开发
Java开发:最新技术驱动的病人挂号系统实操指南与全流程操作技巧汇总
本文介绍基于Spring Boot 3.x、Vue 3等最新技术构建现代化病人挂号系统,涵盖技术选型、核心功能实现与部署方案,助力开发者快速搭建高效、安全的医疗挂号平台。
279 3
|
5月前
|
移动开发 Cloud Native 安全
Java:跨平台之魂,企业级开发的磐石
Java:跨平台之魂,企业级开发的磐石
|
5月前
|
安全 Oracle Java
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
375 0
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
|
6月前
|
并行计算 Java API
Java List 集合结合 Java 17 新特性与现代开发实践的深度解析及实战指南 Java List 集合
本文深入解析Java 17中List集合的现代用法,结合函数式编程、Stream API、密封类、模式匹配等新特性,通过实操案例讲解数据处理、并行计算、响应式编程等场景下的高级应用,帮助开发者提升集合操作效率与代码质量。
273 1
|
6月前
|
安全 Java API
Java 17 及以上版本核心特性在现代开发实践中的深度应用与高效实践方法 Java 开发实践
本项目以“学生成绩管理系统”为例,深入实践Java 17+核心特性与现代开发技术。采用Spring Boot 3.1、WebFlux、R2DBC等构建响应式应用,结合Record类、模式匹配、Stream优化等新特性提升代码质量。涵盖容器化部署(Docker)、自动化测试、性能优化及安全加固,全面展示Java最新技术在实际项目中的应用,助力开发者掌握现代化Java开发方法。
285 1