zoukankan      html  css  js  c++  java
  • Xcode静态检查分析代码

    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清除编译shift+cmd+k)
      2、点击Product > Analyze (shift+cmd+b)
      3、如果你的程序代码有问题,在编译完成之后,右下角的原来提示warning 和 error的地方现在变成了这样
      
      
      4、现在你可以像解决以前的warning 或者 error一样,对提示的地方点进去。
     
      5、可能会存在问题的一些情况:
      
      点击进去:
      
      发现item初始化了但没有用到这个模型中的属性,所以改成:
      XWRequirementItem *item;
      6.shift+cmd+k 清理工程 shift+cmd+b 再次分析结果,如下图:
      
      
    其他可能存在的问题:
      1. 内存泄漏
      2.对象引用
      3.未使用的变量
      4.未使用到的函数
      5.未初始化的变量
      6.数据赋值问题等等。。。
      
    建议使用场景:
     
      1、建议在开发编码阶段使用,直接分析源代码来发现程序中的错误,而不需要实际运行,提前发现代码隐患。
     
      2、测试在冒烟测试时可先进行扫描,错误太多代码修改量太大的情况下可暂不介入测试,以免造成返工。
      
  • 相关阅读:
    cocos2dx环境搭建(android平台)
    转:Android开发实践:Java层与Jni层的数组传递
    转:Linux串口编程入门详解
    Linux串口通信之termios结构体说明
    SQLite3 C语言API入门
    android常用工具记录
    Java中byte与16进制字符串的互相转换
    JNI原理及实现
    Java调用动态库方法说明
    JAVA中使用动态链接库须知
  • 原文地址:https://www.cnblogs.com/yyzanll/p/5286308.html
Copyright © 2011-2022 走看看