code-analysis.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Wed, 14 Dec 2011 15:04:15 +0200
changeset 1170 d575b6abcc42
parent 1169 9e558cd5bbd7
child 1171 7d45ad92679a
permissions -rw-r--r--
Splint.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1167
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     1
.. -*- coding: utf-8; -*-
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     2
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     3
================
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     4
 Code analysis.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     5
================
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     6
.. contemts::
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     7
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     8
About.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     9
======
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    10
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    11
 * http://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    12
1170
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    13
Splint.
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    14
=======
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    15
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    16
Secure Programming Lint, is a programming tool for statically checking C
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    17
programs for security vulnerabilities and coding mistakes. Formerly called
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    18
LCLint, it is a modern version of the Unix lint tool.
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    19
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    20
  http://en.wikipedia.org/wiki/Splint_%28programming_tool%29
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    21
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    22
Sparse.
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    23
=======
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    24
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    25
Sparse is a tool designed to find possible coding faults in the Linux kernel.
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    26
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    27
  http://en.wikipedia.org/wiki/Sparse
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    28
                Wikipedia page.
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    29
1167
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    30
PMD.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    31
====
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    32
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    33
PMD is a static ruleset based Java source code analyzer that identifies
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    34
potential problems.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    35
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    36
PMD has plugins for JDeveloper, Eclipse, JEdit, JBuilder, Omnicore's CodeGuide,
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    37
NetBeans/Sun Studio, IntelliJ IDEA, TextPad, Maven, Ant, Gel, JCreator, Hudson,
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    38
Jenkins, Sonar and Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    39
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    40
  http://pmd.sf.net/
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    41
                Home page.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    42
  http://en.wikipedia.org/wiki/PMD_%28software%29
1168
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    43
                Wikipedia page.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    44
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    45
Yasca.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    46
======
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    47
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    48
Yasca leverages external open source programs, such as FindBugs, PMD, JLint,
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    49
JavaScript Lint, PHPLint, Cppcheck, ClamAV, Pixy, and RATS to scan specific file
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    50
types, and also contains many custom scanners developed for Yasca.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    51
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    52
  http://yasca.org/
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    53
                Home page.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    54
  http://yasca.org/
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    55
                Development home page.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    56
  http://en.wikipedia.org/wiki/Yasca
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    57
                Wikipedia page.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    58
1169
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
    59
Sonar.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
    60
======
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
    61
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
    62
Sonar uses various static code analysis tools such as Checkstyle, PMD, FindBugs,
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
    63
Clover to extract software metrics.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
    64
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
    65
  http://en.wikipedia.org/wiki/Sonar_%28software_quality%29
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
    66
                Wikipedia page.