checkstyle简单使用说明
checkstyle对检查代码规范问题的总结,虽然还不够只能,但已经比较强大。
1.Cyclomatic Complexity is X (max allowed is X).
问题说明:圈复杂度过高。所反映的是“判定条件”的数量。圈复杂度大说明程序代码可能质量低且难于测试和维护。
修改建议:降低判定条件的数量。对方法进行拆分。
2.Nested if-else depth is X (max allowed is X).
问题说明:if-else嵌套太多
修改建议:把嵌套的逻辑用一个分支或多个分支来实现
3.Line matches the illegal pattern 'X'.
问题说明:含有非法字符,一般是system类的东西,程序提交时进行删除。
4.Must have at least one statement
问题说明:空语句。必须添加业务逻辑。有时每行后不小心添加一个【;】,或者异常处理没有进行。
5.Empty statement
问题说明:空语句。必须添加业务逻辑。
6.Literal Strings should be compared using equals(), not 'X'.
问题说明:字符串比较不能用==,用equals
7.switch without "default" clause.
问题说明:switch语句判断没有default的情况处理。
8.Found duplicate of X lines in X, starting from line X
问题说明:包含有重复的语句,应该提取公共方法。
9.Assignment of parameter 'X' is not allowed.
问题说明:不允许对函数的参数进行修改。
10.'X' is a magic number.
问题说明:对于直接用代码中的数字,进行常量的定义。
11.Missing a Javadoc comment.
问题说明:缺少javadoc的注释。
12.Expected X tag for 'X'.
问题说明:注释中缺少对变量,异常,返回值的说明
13.Name 'X' must match pattern 'X'.
问题说明:变量不符合命名规则
14.其他的都比较好理解。对于类,方法长度的控制,注释中各参数的说明等。
问题说明:比较难于修改的为圈复杂度过高,以及嵌套if-else的问题,需要根据实际的业务逻辑进行拆分方法,并进行方法参数的传递。
而对于圈复杂度过高,判断较复杂(if -elseif -elseif ...,switch case较多的判断)修改时还没有合适的方式。
checkstyle简单使用说明的更多相关文章
- Oracle 中 union 和union all 的简单使用说明
1.刚刚工作不久,经常接触oracle,但是对oracle很多东西都不是很熟.今天我们来了解一下union和union all的简单使用说明.Union(union all): 指令的目的是将两个 S ...
- struts 标签<s:ierator>的简单使用说明
struts 标签<s:ierator>的简单使用说明,只显示<s:ierator> 的前6条数据 <s:iterator value="lstVisitor& ...
- Spring依赖注入 --- 简单使用说明
Spring依赖注入 --- 简单使用说明 本文将对spring依赖注入的使用做简单的说明,enjoy your time! 1.使用Spring提供的依赖注入 对spring依赖注入的实现方法感兴趣 ...
- Linux下源码安装ffmpeg及ffmpeg的简单使用说明
一.编译安装 ffmpeg在安装时依赖的包和版本都很让人头疼,不同编译环境也各不相同.公司之前封装了一个又各种出错. 其实办法很简单,就是到官网一步一步按着做就行了:http://trac.ffmpe ...
- Android自定义属性简单使用说明
原创文章,转载请注明出处:http://www.cnblogs.com/baipengzhan/p/Android_attrs.html 本文从实用角度说明Android自定义属性的基本使用流程,清晰 ...
- SDL结合QWidget的简单使用说明(2)
上篇主要讲了针对yv12流数据的渲染,但有时候我们显示视频还要求加一些信息,比如头像,昵称等等.一般的想法是在渲染窗口之上做一个小控件来负责: 但是很遗憾,你会发现你的控件被SDL的渲染完全遮住了,渲 ...
- SDL结合QWidget的简单使用说明
SDL(Simple DirectMeida Layer)是一个简单的封装媒体库,功能主要涉及了相关于OpenGL或者DirectX的显卡硬件功能和一些鼠标,键盘等外设访问.这里主要只说明一下它的渲染 ...
- ViewPager的简单使用说明
前提:工程中使用ViewPager,需要导入google提供的jar包(android-support-v4.jar). 要学习ViewPager的使用,建议直接看官方文档 Creating Swip ...
- jmeter作接口测试入门的简单使用说明
一.添加接口信息 1.添加线程组 (1)路径如下图: (2)部分内容解释 a. Number of Threads(users):线程数 b. Ramp-Up Period(in seconds) ...
随机推荐
- asp.net服务器上无法发送邮件的问题
前几天为开发的网站做了个发送邮件的功能,但是部署到服务器上无法发送邮件,提示由于目标机器积极拒绝,无法连接.在网上找到了一个解决办法 如果安装了McAfee杀毒软件(按照“手工安装方法”安装),首先需 ...
- Python之路,Day9 - 线程、进程、协程和IO多路复用
参考博客: 线程.进程.协程: http://www.cnblogs.com/wupeiqi/articles/5040827.html http://www.cnblogs.com/alex3714 ...
- Python 读取window下UTF-8-BOM 文件
with open('target.txt', 'r', encoding='utf_8_sig') as fp: print(fp.read())
- vue环境的搭建
一.首先要安装nodejs : 别去官网下,慢的要死,这是国内的什么版本都有.地址 这是我下载的. 然后就傻瓜式安装. 验证是否安装成功 二.node.js的环境变量的新建. //我安装的路径是D: ...
- 虚拟机下的centos断电(非正常关机)后mysql启动不了
在windows2003安装了vbox来部署centos. 但无法完美设置开机启动虚拟机里的系统. 只能把启动脚本放到用户的启动项里. server.bat "C:\Program File ...
- 程序包需要 NuGet 客户端版本“2.12”或更高版本,但当前的 NuGet 版本为“2.8.50313.46”
由于安装install-package newtonsoft.json 会出现需要 NuGet 客户端版本“2.12”或更高版本来安装,于是换成旧版的newtonsoft.json PM> ...
- WAF的实现
文章来源:http://danqingdani.blog.163.com/blog/static/1860941952014101723845500/ 本篇文章从WAF产品研发的角度来YY如何实现一款 ...
- LINUX系统下的shell命令---diff、cut、sort、uniq等
1)diff:比较两个文件或目录的不同 -b 不检查空格字符的不同 -B 不检查空白行 -c 显示全部内容,并标出不同之处 -i 不检查 ...
- Linux:uniq命令详解
uniq uniq命令用于报告或忽略文件中的重复行,一般与sort命令结合使用. 语法 uniq(选项)(参数) 选项 -c或——count:在每列旁边显示该行重复出现的次数: -d或--repeat ...
- 《利用Python进行数据分析》笔记---第2章--MovieLens 1M数据集
写在前面的话: 实例中的所有数据都是在GitHub上下载的,打包下载即可. 地址是:http://github.com/pydata/pydata-book 还有一定要说明的: 我使用的是Python ...