Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >CODING DevOps 代码质量实战系列第三课:Java 版

CODING DevOps 代码质量实战系列第三课:Java 版

作者头像
腾讯云 CODING
发布于 2020-08-26 09:37:45
发布于 2020-08-26 09:37:45
6410
举报
文章被收录于专栏:CODING DevOpsCODING DevOps

讲师介绍

杨周

CODING DevOps 架构师

CODING 布道师

连续创业者、DIY/Linux 玩家、知乎小 V,曾在创新工场、百度担任后端开发。十余年一线研发和带队经验,经历了 ToB、ToC、O2O、国内、出海各种项目,见证了云计算时代的诞生,擅长研发最佳实践:Code Review、DevOpsGit Workflow、敏捷开发、架构、极客办公硬件。

Java 老项目常见质量问题

  • 问题一:把 Jar 包提交到了代码库
Jar 包等二进制文件无法进行文本对比,体积庞大,如果放在代码库中,导致拉取代码变慢,而且无法跟进包版本升级。所以应使用包管理工具进行网络安装。
但有的第三方包未发布到 Maven 仓库,或者公司的私有包,需要上传到私有仓库。无需搭建,使用 CODING 制品库即可。
  • 问题二:书写规范问题

比如魔法数字(magic number)、缩进等问题,可通过引入业界知名的代码规范,使用 Lint(代码静态扫码工具)进行检查。Java 常用的 Lint 工具是 Checkstyle,下载 Google Java Style 的 xml 文件,即可进行检查,包括很多规则,比如:

  • 每行代码最大长度 100 个字符
  • 缩进使用 2 个空格

老项目有成千上万的报错,一次难以清理干净,建议使用增量检查,具体请访问 CODING 帮助文档,搜索「增量检查」。

  • 问题三:使用落后的技术

比如落后的 Java 版本、maven,建议升级至 Gradle。

Java 自动化测试

  • 自动化测试要点
可测性:不要在代码中使用系统时间、随机数、实例化对象,而应使用可被 mock 的时间库、依赖注入;
Fake:用于伪造测试数据,而不要在测试代码中写死 123、12:00:00,因为可能 999、00:00:00 时会报错。
Mock:模拟对象,常用于拦截第三方服务,比如拦截微信登录、支付,直接返回成功或失败,然后测试后续业务逻辑,而不可能每次测试时真的付款。

Java 自动化测试时,可使用 JaCoCo 生成测试覆盖率的 HTML 报告,可以看到哪一行代码没有覆盖。这种报告包含代码,所以需要私有访问,可使用 CODING 通用报告功能,在持续集成中自动上传即可。

  • Java 代码自动生成 API 文档

在项目开发中,最好让代码先行,在代码里写注释,这样可以保证注释与代码一起维护,然后在持续集成中执行命令自动生成文档,可上传到 CODING API 文档中,支持团队成员直接访问、加密分享。

点击阅读原文,观看课程回放

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-08-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾云 CODING 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
直播回顾 | DevOps 代码质量实战第三课
关注腾讯云大学,了解行业最新技术动态 戳【阅读原文】观看完整课程回顾 讲 师 介 绍  连续创业者、DIY/Linux 玩家、知乎小 V,曾在创新工场、百度担任后端开发。十余年一线研发和带队经验,经历了 ToB、ToC、O2O、国内、出海各种项目,见证了云计算时代的诞生,擅长研发最佳实践:Code Review、DevOps、Git Workflow、敏捷开发、架构、极客办公硬件。  Java 老项目常见质量问题 问题一:把 Jar 包提交到了代码库 Jar 包等二进制文件无法进行文本对比,体
腾讯产业互联网学堂1
2023/05/29
2030
直播回顾 | DevOps 代码质量实战第三课
DevOps 代码质量实战(Java 版)
查看完整直播回放:https://cloud.tencent.com/edu/learning/live-2859
可可爱爱没有脑袋
2020/10/16
9240
​CODING DevOps 代码质量实战系列第二课: PHP 版
连续创业者、DIY/Linux 玩家、知乎小 V,曾在创新工场、百度担任后端开发。十余年一线研发和带队经验,经历了 ToB、ToC、O2O、国内、出海各种项目,见证了云计算时代的诞生,擅长研发最佳实践:Code Review、DevOps、Git Workflow、敏捷开发、架构、极客办公硬件。
腾讯云 CODING
2020/09/03
5510
​CODING DevOps 代码质量实战系列第二课: PHP 版
DevOps 代码质量实战(PHP 版)
查看完整直播回放:https://cloud.tencent.com/edu/learning/live-2857
可可爱爱没有脑袋
2020/10/16
7750
​CODING DevOps 线下沙龙回顾一:DevOps 代码质量实战
11 月 22 日,由 CODING 主办的 DevOps 技术沙龙系列「质量」专场在上海圆满结束。在活动现场,四位来自腾讯等知名企业的技术大咖们分享了研发质量与效能的实战经验,与观众们共同探讨如何采取有效手段以保证和提高软件质量。
腾讯云 CODING
2020/12/07
1.1K0
​CODING DevOps 线下沙龙回顾一:DevOps 代码质量实战
​CODING DevOps 代码质量实战系列第一课:代码规范与 Git Flow
连续创业者、DIY/Linux 玩家、知乎小 V,曾在创新工场、百度担任后端开发。十余年一线研发和带队经验,经历了 ToB、ToC、O2O、国内、出海各种项目,见证了云计算时代的诞生,擅长研发最佳实践:Code Review、DevOps、Git Workflow、敏捷开发、架构、极客办公硬件。
腾讯云 CODING
2020/08/25
5350
​CODING DevOps 代码质量实战系列第一课:代码规范与 Git Flow
​CODING DevOps 代码质量实战系列最后一课,周四发车
随着 ToB(企业服务)的兴起和 ToC(消费互联网)产品进入成熟期,线上故障带来的损失越来越大,代码质量越来越重要,而「质量内建」正是 DevOps 核心理念之一。
腾讯云 CODING
2020/08/12
4640
​CODING DevOps 代码质量实战系列第二课,相约周三
随着 ToB(企业服务)的兴起和 ToC(消费互联网)产品进入成熟期,线上故障带来的损失越来越大,代码质量越来越重要,而「质量内建」正是 DevOps 核心理念之一。《DevOps 代码质量实战(PHP 版)》 为 CODING DevOps 代码质量实战系列的第二课,同时也是本系列的 PHP 版,杨周老师将以 PHP Laravel 为例,为同学们讲解代码规范、Git workflow、持续集成、代码生成 API 文档、开发 composer 包、单元测试、Docker 等内容。
腾讯云 CODING
2020/08/11
3440
CODING DevOps 8月系列线上直播课开始报名啦!
关注腾讯云大学,了解行业最新技术动态 腾讯云大学,CODING DevOps 8月份系列直播分享课活动报名开始啦~ 此次课程分有两期,每期都包含了3个课时,循序渐进, 从夯实基础,到一场又一场的实战经验分享,让你飞速成长。 现在报名并参与集赞活动还有精美礼品等着你, 在学习之余,积极参与活动,跟我们一起传播分享云计算前沿技术知识吧! 叮咚~【腾讯云大学】提醒你,你有一份课程快递待取中哦~ 8月直播课 |第一期 8月11日—8月13日 每晚19:00——20:00 腾讯云大学重磅推出 《CODING D
腾讯产业互联网学堂1
2023/05/29
3720
CODING DevOps 8月系列线上直播课开始报名啦!
DevOps 代码质量实战:代码规范与 Git Flow
查看完整直播回放:https://cloud.tencent.com/edu/learning/live-2837
可可爱爱没有脑袋
2020/10/16
1.5K0
腾讯云推出一站式 DevOps 解决方案 —— CODING DevOps
---- 在产业互联网的大背景下,如何将人工智能、大数据等前沿技术与实体产业相结合,推动传统企业转型升级,已经成为每一个企业不得不思考的问题。落后的软件研发能力已经拖慢了中国大量企业的数字化转型进程。 为了满足企业数字化转型需求,腾讯云正式推出了一站式 DevOps 解决方案 —— CODING DevOps,帮助企业解决代码资源混乱、发布流程低效、管理模式滞后、高昂的 IT 建设维护成本等造成转型效率低下的问题。CODING DevOps 打通企业研发任督二脉,让云上开发更简单,让数字化转型更加
腾讯云serverless团队
2019/09/04
4K0
腾讯云推出一站式 DevOps 解决方案 —— CODING DevOps
多图流带你玩转CODING DevOps
说人话就是可以把软件开发流程的制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动在CODING上来实现
wayn_aqua
2021/07/11
1.9K0
多图流带你玩转CODING DevOps
​CODING DevOps 代码质量实战系列第一课,本周开讲!
随着 ToB(企业服务)的兴起和 ToC(消费互联网)产品进入成熟期,线上故障带来的损失越来越大,代码质量越来越重要,而「质量内建」正是 DevOps 核心理念之一。本次 CODING DevOps 代码质量实战系列第一课:《DevOps 代码质量实战:代码规范与 Git Flow》,将由 CODING 布道师、CODING DevOps 架构师杨周老师主讲,为同学们详细讲解提高代码质量的最佳实践,不只适合新项目,也为老项目提供完善的渐进式方案。
腾讯云 CODING
2020/08/10
4580
如何使用 CODING 实践 DevOps 全流程
你好,欢迎使用 CODING!这份最佳实践将帮助你通过 CODING 来更好地实践 DevOps 流程。
腾讯云 CODING
2019/09/16
1.8K0
从 DevOps 到 Serverless
DevOps 提倡通过一系列的技术和工具降低开发和运维人员之间的隔阂,实现从开发到最终部署的全流程自动化,从而达到开发运维一体化。通过将 DevOps 的理念引入到整个系统的开发过程中,能够显著提升软件的开发效率,缩短软件交付的周期,更加适应当今快速发展的互联网时代。
DevOps时代
2019/10/14
7010
从 DevOps 到 Serverless
CODING 敏捷实战系列课第四讲:从头搭建持续集成 DevOps 流水线
大家好,今天课程的主要内容为如何从头搭建 DevOps 流水线以及其在研发工作中的意义,最后是 DevOps 流水线实践与敏捷开发的关系的总结。
腾讯云 CODING
2020/05/15
1K0
CODING 敏捷实战系列课第四讲:从头搭建持续集成 DevOps 流水线
​CODING 敏捷实战系列课第四讲:从头搭建持续集成 DevOps 流水线
大家好,今天课程的主要内容为如何从头搭建 DevOps 流水线以及其在研发工作中的意义,最后是 DevOps 流水线实践与敏捷开发的关系的总结。
腾讯云 CODING
2020/05/15
1.1K0
​CODING 敏捷实战系列课第四讲:从头搭建持续集成 DevOps 流水线
​DevOps 视角的前后端分离与实战
随着微前端、微服务等技术理念和架构的蓬勃发展,我们已经没必要去讨论为什么要前后端分离这种话题,前后端分离已成为互联网项目开发的标准模式。前后端在各自的领域发展越来越纵深。
腾讯云 CODING
2020/11/03
1.2K0
保证代码质量的工具与方法——细节决定成败
大家好,我是Echo_Wish,今天我们要聊的是一个在开发过程中至关重要的话题:代码质量。高质量的代码不仅能使开发过程更加顺利,减少Bug和故障,还能提高团队的工作效率和产品的维护性。那么,如何保证代码质量呢?下面我将详细介绍几种工具和方法,希望对你有所帮助。
Echo_Wish
2025/03/07
3760
保证代码质量的工具与方法——细节决定成败
自动化 DevOps 使用 Codeclimate 执行代码质量分析
注意:这里 Codeclimate 是需要依赖本地 Docker 容器来运行执行代码分析的,所以需要提前安装好 Docker, 这里忽略 Docker 的安装过程。
哎_小羊
2019/05/25
3.7K1
推荐阅读
相关推荐
直播回顾 | DevOps 代码质量实战第三课
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档