关闭

Xcode工具静态检查分析代码

237人阅读 评论(0) 收藏 举报
分类:
Clang静态分析和Instruments来剖析代码有一些不同,Clang更致力于在编译的过程中通过自身的一套判断机制来找出代码中潜在的隐患。
 
  在XCode 3.2之后的版本里,Clang已经被集成进来,Static Analysis 是基于 Clang 的非常好的静态代码分析工具。可以从xcode直接运行Static Analysis 分析器。
 
  Static Analysis 优点:
 
  1、使用操作容易。
 
  2、能够在编码阶段,开发自行进行代码检查。早期发现代码隐患。
 
  3、直接分析源代码来发现程序中的错误,而不需要实际运行。
 
  4、自动检测objective-C程序中的BUG,发现内存泄露和其它问题。
 
  5、内存问题发现越早,解决的代价就越小。
 
  使用方法:
 
  1、确保你的程序没有被编译过(编译过了就使用Clean all targets清除编译)
 
  2、点击Product > Analyze如下图:
 
 

短信验证码接口
短信验证码接口
app开发报价单
app开发报价单
loft公寓出租
loft公寓出租
留学生公寓
留学生公寓
二本补录学校
二本补录学校

  3、如果你的程序代码有问题,在编译完成之后,右下角的原来提示warning 和 error的地方现在变成了这样:
 
 
  4、现在你可以像解决以前的warning 或者 error一样,对提示的地方点进去。
 
  5、可能会存在问题的一些情况:
 
  各处内存泄漏:

ios培训班
ios培训班
瘦小腿的方法
瘦小腿的方法
php培训课程
php培训课程

 
 
  对象引用隐患(内存已释放可能又被使用了)
 
 
 
未使用到的函数:
 
 
  未初始化的变量
 
 
  数据赋值隐患:
 
  The left operand of …… is a garbage value
 
  分析解决方法(例:内存泄露)
 
  1、点击左侧对应内存泄露某处,右侧显示泄露行
 

西渡二手房
西渡二手房
web前端培训
web前端培训
前端工程师待遇
前端工程师待遇
学习编程语言
学习编程语言
别墅装修
别墅装修

 
  2、双击行所对应的信息,显示交互详情
 
 
  3、修改代码,解决泄露问题。
 
 
  4、修改后再次静态扫描发现,错误从40减到39,修复的代码行已不再出现错误。
 
 
  注:上述工程截图为测试Demo
 
  建议使用场景:
 
  1、建议在开发编码阶段使用,直接分析源代码来发现程序中的错误,而不需要实际运行,提前发现代码隐患。
 
  2、测试在冒烟测试时可先进行扫描,错误太多代码修改量太大的情况下可暂不介入测试,以免造成返工。
 
  个人使用感受:
 
  淘宝读书客户端ihone1.0版本,缺少经验,在性能测试执行阶段进行该静态扫描,功能测试返工情况较严重。
 
  在2.0版本中,推荐给开发,在开发编码中就较大部份内存泄露问题进行了解决,特别是需要release和缺少dealloc的地方。
 
  在之后使用instruments内存泄露测试中,泄露少,只需进行较少的代码改动,功能回归工作量小。
 
  个人觉得是一款非常简单又实用的的IOS代码静态检查工具,值得推荐给IOS开发同学和IOS性能测试同学。
 
0
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1172314次
    • 积分:16120
    • 等级:
    • 排名:第640名
    • 原创:376篇
    • 转载:719篇
    • 译文:0篇
    • 评论:75条
    最新评论