
SonarSource简介
代码质量是软件发明时出现的问题。代码质量差会导致各种问题: 团队速度低、应用程序退役、生产崩溃、公司声誉不佳..。在 SonarSource, 我们提供了解决方案, 以提高维修性, 可靠性和安全性。性问题
这通常被称为技术债务。与可维护性相关的问题在我们的产品中被命名为 '代码气味'。从本质上说, 软件预计会随着时间的推移而改变, 这意味着今天编写的代码将在明天更新。在代码库中进行此类更改的能力、成本和时间直接与其可维护性级别相关。换言之, 低可维护性意味着开发团队的低速。可维护性包括模块化、理解、可变性、可测试性和可重用等许多概念。它不采取关键问题的形式, 而是数以千计的小问题与jia做法的结果。





关于SonarSource连续检查
我们 SonarSource 的创始人, 非常熟悉传统模式的缺点,在其范围内工作多年。但随着持续集成的兴起, 我们设想了一个不同的模式是可能的。正如不断整合的变化多个开发人员防止集成头疼, 我们意识到不断应用质量门标准防止准时审计模型的问题。连续检测是代码质量管理的新范式, 旨在使内部软件质量是软件开发生命周期的一个组成部分。这是一个整体的, 完全实现提高项目内部软件质量和软件可视性的过程所有利益相关者的质量。连续的检查提供连续代码质量管理, 并且大大提高了开发项目的 ROI。连续检测的关键概念是发现early–when 修复它们的问题仍然是便宜和容易的。在这个模型下, 自动代码审核是每天执行并在组织内提供。这些客观、自动化的审计沿多个可维护性轴分析项目代码, 测试 bug, 并将其与团队进行比较编码标准。审核是通过工具来完成的, 它们直接在开发人员的环境,代理商sonarqube招标参数, 很像微软 Word 中的拼写检查器。新的团队成员将尽快收到通知问题被发现, 所以他们可以尽快解决 sible–while 的代码仍然是新鲜的开发人员的想法。及时的这些警报有额外的好处, 培训程序员的坏习惯, 并引导他们到好的。持续的检查在开发团队中得到了基层的采纳, 因为它的协作自然导致真正的集体代码所有权, 并帮助团队提供更好的软件。与它的小,快速的问题识别和处理周期, 它已被证明增加开发团队效率, 通过促进高质量代码的开发来提高应用程序的使用寿命。持续检查的方面可以归纳为十原则。
SonarSource
通过上述命令成功分析项目将导致以下输出到控制台或日志文件:
SonarQube Runner 2.3
Java 1.7.0_25 Oracle Corporation(64位)
Mac OS X 10.8.5 x86_64
INFO:Runner配置文件:/opt/sonar-runner-2.3/conf/sonar-perties
信息:项目配置文件:/Users/manisarkar/bn_projects/TimelineJS/sonar-perties
INFO:默认语言环境:“en_US”,源代码编码:“UTF-8”
信息:工作目录:/Users/manisarkar/bn_projects/TimelineJS/.sonar
信息:SonarQube服务器3.7
14:11:20.927 INFO - 加载批量设置
。
。
。
14:11:38.290 INFO - ANALYSIS SUCCESSFUL,你可以浏览http:// localhost:9000 / dashboard / index / TimelineJS
14:11:38.292 INFO - 执行工作后类portJob
14:11:38.293 INFO - 执行岗位职责类re.ndIssueNotificatiPo的sdtJob
14:11:38.314 INFO - 执行工作后类re.dexProjectPo的stJob
14:11:38.356 INFO - 执行工作后类ugins.jectPurgePo的stJob
14:11:38.365 INFO - - >在2013-08-19和2013-09-15之间每天保留一张快照
14:11:38.365 INFO - - >在2012-09-17和2013-08-19之间每周保留一个快照
14:11:38.365 INFO - - >在2008-09-22和2012-09-17之间每月保留一个快照
14:11:38.365 INFO - - >删除之前的数据:2008-09-22
14:11:38.368 INFO - - > Clean TimelineJS [id = 151]
14:11:38.372信息 - 信息:----------------------------------------- -------------------------------
信息:执行成功
信息:------------------------------------------------ ------------------------
总时间:19.099s
终内存:14M / 502M
信息:------------------------------------------------ ------------------------
以下是几个链接,以示例sonar-perties文件来帮助创建新的,江苏sonarqube招标参数,即非Maven Java项目的Sonar设置[05]和SonarQube Runner [06]分析。
注意:SonarQube Runner希望SonarQube在指ding端口上运行,否则会抛出错误,例如ERROR:Sonar server http:// localhost:9000无法访问。这当然可以通过配置文件进行更改(参见上一篇文章[01])。
SonarQube组件
一旦构建完成并成功,可以在仪表板中找到新的或更新的项目。钻入项目将带来一个屏幕,载入重要指标和分析项目的各个方面:
(以上是示例应用程序的屏幕截图)
令人感兴趣的主要重要组成部分是质量指标,复杂因素,复杂性(左下),代理商sonarqube招标参数,测试覆盖率指标(单位测试覆盖率和单位测试成功率)。可能安全违规。 Package Tangle Index and Dependencies to cut,绝dui是方便的,以保持清洁的包和松散耦合的依赖关系。同样的说法,LCOM4(方法中缺少凝聚力 - 降值越好),复杂性也揭示了你的类,方法和功能的松散耦合 - 它也是在文件级别和整体级别给出全图。所有这些组件都是软件质量的良好指标,至少如果不是软件工艺 - 底层代码写在质量上有多好?或者它可以被看作是 - 仍然是充足的改进和重构的房间。
热点视图现在进一步分析了分析的其他一些重要方面,并突出显示需要更多关注的领域或者一个更多的问题在其顶点附近 - 要么超越da允许限制,要么需要更多的抛光才能满足要求。
(以上是在网站上发布的JDK7的截图)
我非常喜欢下面的设计组件,它可以很好地分解包装依赖关系并强调依赖循环。它是中大型项目中更复杂的事情之一,通常可能会阻碍模块化。
华克斯-江苏sonarqube招标参数由苏州华克斯信息科技有限公司提供。“Loadrunner,Fortify,源代码审计,源代码扫描”选择苏州华克斯信息科技有限公司,公司位于:苏州工业园区新平街388号,多年来,华克斯坚持为客户提供好的服务,联系人:华克斯。欢迎广大新老客户来电,来函,亲临指导,洽谈业务。华克斯期待成为您的长期合作伙伴!