基于华为在 自动化 源代码静态检查方面的技术积累与企业级应用经验,华为云今天正式发布CodeArts Check代码检查服务,为用户提供代码风格、通用质量与代码安全风险等检查能力,并提供问题闭环处理、检查报告等功能,可一站式完成代码检查作业,将代码质量保证活动从原始的人工检视中解脱出来,为产品代码质量提供有力保障,助力客户商业成功。
质量是产品的生命线,软件开发事前预防的成本远低于事后补救。如果程序员在代码编写阶段能够及时修正软件缺陷和安全隐患,避免缺陷流向后端,就可以有效提升产品质量。
本次华为云CodeArts Check推出六大特性,帮助用户高效守护软件质量和安全。
特性一:自研代码检查引擎,全面评估代码质量七特征
华为云CodeArts Check打造了能力全面的自研引擎。该引擎融合了华为30多年对代码质量及可信度提升方面的持续思考与探索实践,积累了丰富的检查规则,形成独有的检查能力,能够帮助用户在一次扫描中,针对代码的”可读性、可维护性、安全性、可靠性、可测试性、高效性、可移植性”七大质量特征进行全面分析。
特性二:支持五大业界主流标准和华为编程规范,提升产品代码规范度
软件产品的质量问题往往会导致产品产生难以预测的运营风险或成本风险,所以建立源代码级别的质量检测措施标准尤为重要。
华为云CodeArts Check不仅支持ISO 5055、CERT、CWE、OWASP TOP10、SANS TOP 25五大业界主流编程标准和优秀实践,同时内置华为终端、网络、 云计算 等产品多年研发经验总结的编程规范,帮助用户快速复制业界优秀实践,确保产品代码符合业界标准和规范。
特性三:支持主流开发语言,内置7000+检查规则,便于用户开箱即用
华为云CodeArts Check支持C、C++、Java、Python、GO等十余种常见开发语言,可满足嵌入式、 云服务 、WEB应用、移动应用等多种开发场景所需。提供超过7000条检查规则,并提供全面检查规则集、移动领域规则集、华为编程规范规则集等十余个规则集,以满足各类检查场景,便于用户开箱即用。
特性四:日均百亿级扫描能力,支持大型企业超大规模代码检查
华为云CodeArts Check具备强大的高并发处理能力,在华为内部承担超过15万软件开发人员的高频代码检查,日均扫描五百亿至千亿行代码。
针对基础设施导致的服务中断风险,华为云CodeArts Check可通过AZ容灾、跨region级容灾多活,支持过载保护、服务依赖和隔离等一系列高可用技术,实现服务故障自探测、自隔离、自恢复,为大型应用研发团队提供可靠支持。
针对代码检查业务量波峰波谷落差明显的特征,华为云CodeArts Check通过强大的弹性调度能力,能够快速高效地调配资源,满足业务所需,确保业务高峰零等待。
特性五:一站式问题闭环修复,问题修复效率倍增
华为云CodeArts Check内置编程规范说明、正确示例、错误示例和修复建议,能够让问题精准定位到行并提供修复指导,以提高问题分析效率。
可自动根据代码提交信息匹配问题责任人,通过IDE插件提供自动修复能力,提升问题修复效率;
支持自动同步已处理的忽略问题、对于经过审视判定为不需要处理的问题,同一代码仓库只需处理一次。
得益于修复指导、自动修复、结果自动继承这三大能力,华为云CodeArts Check能够让检查问题处理和修复的效率提升100%。
特性六:“代码编写-代码合并-版本发布”三层缺陷防护,兼顾效率与质量
华为云CodeArts Check提供了丰富的API接口,提供IDE代码检查插件,与代码仓协同支持代码提交时自动检查,与流水线协同支持软件全量代码检查,三层防范代码缺陷引入。
“快车道”精准、快速检查前移,频繁检查,对开发人员干扰最小;
“慢车道”全面、深度检查夜间进行,防止代码检查遗漏。
目前,华为云CodeArts Check不仅支撑了华为15万研发人员、日均扫描逾500亿行的代码检查工作,也广泛应用于能源、物流等企业,新闻媒体及广大开发者,支持企业统一规范开发标准,规范研发过程,将质量活动和安全检查前移到代码开发阶段,为企业生产高质量且安全的软件保驾护航。
未来,华为云CodeArts Check还将持续增强自动修复和代码深度安全检查能力,并进一步提升平台的开放性和扩展性,助力企业商业成功。