代码管理和检查平台汇总
程序员离不开代码检查,有的是技术团队是每周五进行一次代码审核,有的团队是用Review Board等工具进行Code Review。有的团队是先用工具进行代码的静态分析,再进行人为的Code Review。
下面我们总结了 代码静态分析工具、代码审核工具、代码质量管理平台、iOS分析工具。包含了java等服务端的工具,还有iOS的工具。
一、代码静态分析
静态分析 是指在不运行代码的条件下,进行代码分析。
静态分析 可以是标示可能的错误代码,或者不符合规范的代码。
比如 规范要求每个方法名首字母要小写,然后你写成了大写,静态分析工具就能分析出来。
java等服务端代码可以用:
1、Checkstyle :通过检查对代码编码格式,命名约定,Javadoc,类设计等方面进行代码规范和风格的检查,从而有效约束开发人员更好地遵循代码编写规范。
2、FindBugs :通过检查类文件或 JAR 文件,将字节码与一组缺陷模式进行对比从而发现代码缺陷,完成静态代码分析。FindBugs 既提供可视化 UI 界面,同时也可以作为 Eclipse 插件使用。
3、PMD :通过其内置的编码规则对 Java 代码进行静态检查,主要包括对潜在的 bug,未使用的代码,重复的代码,循环体创建新对象等问题的检验。
二、代码审核工具
Code Review也就是代码审核。代码审核工具最大的意义在于:只有经过别人审核通过的代码才能提交到 git或者svn的服务端。这样就保证了代码的水准。
常用的代码审核工具:Review Board、Github 、Codestriker、Groogle 、Rietveld、JCR等。
三、代码质量管理平台
常用的:SonarQube,可以检测下面的问题:
1、糟糕的复杂度分布
文件、类、方法等,如果复杂度过高 将难以改变,并很容易出现问题。
2、重复
sonar可以展示源码中重复严重的地方
3、缺乏单元测试
统计单元测试覆盖率
4、没有代码标准
sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写
5、没有足够 的 或者过多 的注释
没有注释将使代码可读性变差,过多的注释是冗余的
6、潜在的bug
sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具检测出潜在的bug
7、糟糕的设计
通过sonar可以找出循环,展示包与包、类与类之间的相互依赖关系
可以检测自定义的架构规则
检测耦合
四、
iOS的静态检测(不能检测代码规范)
1、Facebook Infer
Facebook 称该工具帮助其每个月检查出数百个应用中潜在的 Bug,例如一些空指针访问、资源和内存泄漏等等
2、Clang Static Analyzer
3、使用Uncrustify 格式化 Xcode代码
代码管理和检查平台汇总相关推荐
- 代码管理平台—svn
内容摘要 一.代码管理平台介绍 二. 安装svn 三.客户端上使用svn(linux) 四.客户端上使用svn(windows) 一.代码管理平台介绍 代码管理平台也叫版本控制,记录若干文件内容变化, ...
- 【信息系统项目管理师】第二十三章 信息系统综合测试与管理(考点汇总篇)
[信息系统项目管理师]第二十三章 信息系统综合测试与管理(考点汇总篇) 考点分析与预测 本章内容属于第三版教材新增的内容,总共80多页,但在上午考试中只考2分.一般来说还会在案例分析中涉及一个关于测试 ...
- 代码管理和版本管理的作业流程以及规范是怎样的?
代码管理和版本管理的作业流程以及规范是怎样的? 代码管理和版本管理的作业流程以及规范是怎样的?下面以文档的形式进行详细分析,希望能够给予测试人员一些帮助和指导. 本文目的 本文试图提供一套有效进行代码 ...
- 为何Google、微软、华为将亿级源代码放一个仓库?从全球最大代码管理库说起...
作者 | 夕颜 编辑 | Just 出品 | AI 科技大本营(ID:rgznai100) [导读]2017 年,在当时微软的一篇官方博客中,时任微软云开发服务副总裁的 Brian Harry 表示微 ...
- 代码管理规范_微服务架构下代码管理规范
当下对于代码的管理,主要采用GitLab或GitHub,然而使用git进行代码管理过程中,一般有四种开发模式,分别为主干开发主干发布,主干开发分支发布,分支开发主干发布,分支开发分支发布.四种开发模式 ...
- 代码管理之SVN服务器及Git的创建与使用
---恢复内容开始--- SVN和Git的都是用于项目配置项管理的工具,区别很大,各有千秋.但他们之间的区别并非今天我要谈论的重点,因为这些有很多成熟的文章博客介绍.所以今天我主要是介绍一些SVN和G ...
- 在Windows Server 2008上部署SVN代码管理总结
这段时间在公司开发Flex程序,所以使用TortoiseSVN作为团队代码管理器,今天在公司服务器上部署SVN服务器,并实验成功,总结如下: 服务器环境: 操作系统:Windows Server 20 ...
- 使用Git进行代码管理的心得
注册GitHub账号 要使用GitHub进行代码管理.首先,需要一个GitHub的账户. 登录GitHub.com进行注册. 根据实践课上学长的指导,或参考他的blog来继续创建Organizatio ...
- 代码管理工具 Git
之前一直使用微软的代码管理工具TFS(Team Foundation Server)..NET CORE 2.0的发布后,考虑到.NET CORE项目可以跨平台,准备把项目迁移到.NET CORE 环 ...
最新文章
- java ado_Java进击C#——语法之ADO.NET
- 编写一个基本的Android程序
- 【杂谈】怎么使用有三AI完成系统性学习并赚钱
- Firefox, IE等不同浏览器对JavaScript,CSS不同解析问题 (转备以后使用)
- jquery:validate的例子{转载}
- redis-full-check
- [设计模式-结构型]装饰模式(Decorator)
- 使用 Filebeat 对多行日志进行处理(multiline)
- JavaScriptjQuery.HTML5事件
- SQL Server 备份和还原
- 美国3月通胀见顶了吗?
- LintCode 最长公共子串
- 马哥python线下培训
- 各种分类算法优缺点比较
- 获取wifi密码信息(仅供学习使用,勿作他用)
- 资源变现小程序添加折扣充值和折扣影票插件
- history命令和FHS介绍
- 如何:创建 C# 控制台应用程序
- 5G无用时代的终结—从iPhone 12系列到vivo 6G应用场景的展望
- 小心看上去平平无奇的陷阱:如何防范高级渣?
热门文章
- map函数python返回值,Python中map函数使用
- 五分钟学会python_关于五分钟学Python系列视频
- 70. 爬楼梯(JavaScript)
- 生命周期 用户可以操作dom_当面试官问:能否介绍下Vue生命周期时,该如何回答...
- python笔记之matplotlib.pyplot曲线平滑自定义函数:smooth_curv()
- 五合体机器人乐高_又来一波新品,高达、乐高全都有
- 大数据模型研究报告pdf_业绩大数据分析报告模型
- sm2算法c 语言实现,移远通信集成国密安全解决方案的C-V2X AP模组商用落地
- 计算机没有cpu会怎么样,电脑cpu不好会怎么样
- css两列显示,div+css如何控制信息分两列显示?