Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
analyseur_de_code_static [Le 16/11/2009, 20:44] psychederic créée |
analyseur_de_code_static [Le 11/09/2022, 11:08] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
---- | ---- | ||
- | ====== Les analyseurs de code static ====== | + | ====== Les analyseurs de code statique ====== |
En informatique, la notion d'analyse statique de programmes couvre une variété de méthodes utilisées pour obtenir des informations sur le comportement d'un programme lors de son exécution sans réellement l'exécuter. C'est cette dernière restriction qui distingue l'analyse statique des analyses dynamiques (comme le débogage ou le profiling) qui sont concernés par le suivi de l'exécution du programme. | En informatique, la notion d'analyse statique de programmes couvre une variété de méthodes utilisées pour obtenir des informations sur le comportement d'un programme lors de son exécution sans réellement l'exécuter. C'est cette dernière restriction qui distingue l'analyse statique des analyses dynamiques (comme le débogage ou le profiling) qui sont concernés par le suivi de l'exécution du programme. | ||
Ligne 9: | Ligne 9: | ||
Elle permet l'optimisation du code au niveau de l'exécution, de la mémoire, de sa sécurité. | Elle permet l'optimisation du code au niveau de l'exécution, de la mémoire, de sa sécurité. | ||
+ | |||
+ | =====Solution pour la qualité de développement logiciel ===== | ||
+ | * <del>[[Sonar]]</del> [[SonarQube]] (( https://www.sonarqube.org/ )) | ||
+ | * [[Squale]] ((http://linuxfr.org/2010/05/26/26896.html)) | ||
+ | * [[Squash]] ([[http://www.systematic-paris-region.org/fr/mots-cles/squash|site]]): vise à structurer et industrialiser les activités de tests fonctionnels en proposant une méthodologie outillée libre adaptée à la mise en œuvre d’un centre de service de tests. | ||
===== Par langage ===== | ===== Par langage ===== | ||
==== C / C++ ==== | ==== C / C++ ==== | ||
- | * [[https://sourceforge.net/projects/clint/|Clint]] | + | <note>Concurrents majeurs propriétaires : [[https://en.wikipedia.org/wiki/PC-Lint|pc-lint]](gimpel),[[http://www.klocwork.com/|Klocwork]], [[http://www.coverity.com/|Coverity]], [[http://www.mathworks.com/products/polyspace/index.html|PolySpace]]</note> |
+ | |||
+ | * [[http://sparse.wiki.kernel.org/index.php/Main_Page|Sparse (utilisé pour le kernel linux)]] ( tourné pour les kernels ) | ||
+ | * **[[https://valgrind.org/|Valgrind]]** ( [[http://www.cprogramming.com/debugging/valgrind.html|tutoriel]] ) | ||
+ | * C++ Check http://sf.net/projects/cppcheck/ | ||
+ | * Oink http://www.cubewano.org/oink/ | ||
+ | * C and C++ Code Counter https://sourceforge.net/projects/cccc/ | ||
+ | * Splint (dans les dépôts) | ||
+ | * [[https://wiki.mozilla.org/Static_Analysis|Mozilla's Pork]] | ||
+ | * [[https://wiki.mozilla.org/Static_Analysis|Mozilla's Dehydra]] | ||
+ | * Les options -Weff++ pour GNU g++ | ||
+ | * [[http://smatch.sourceforge.net/|SMATCH]] | ||
+ | * [[http://www.spinroot.com/uno/|Uno]] | ||
+ | * [[http://www.domagoj-babic.com/index.php/ResearchProjects/Calysto|Calysto]] | ||
+ | * [[http://saturn.stanford.edu/pages/relatedindex.html|Saturn]] | ||
+ | * [[http://www.dwheeler.com/flawfinder/|Flawfinder]] | ||
+ | * [[http://code.google.com/p/cppanalyse/|cppanalyse]] | ||
+ | * [[http://google-styleguide.googlecode.com/svn/trunk/cpplint/|Cpplint (google)]] | ||
+ | * [[https://sourceforge.net/projects/clint/|Clint]] | ||
+ | * [[http://mygcc.free.fr/|mygcc]] | ||
+ | * [[ftp://ftp.sds.lcs.mit.edu/pub/Larch/lclint/|LC-Lint]] | ||
+ | |||
+ | |||
+ | Outil de métrique (pas d'analyse) : | ||
+ | |||
+ | * http://www.chris-lott.org/resources/cmetrics/ | ||
+ | |||
+ | |||
+ | ==== .net ==== | ||
+ | * [[http://www.mono-project.com/Gendarme|Gendarme (mono)]] | ||
==== PHP ==== | ==== PHP ==== | ||
+ | * [[http://www.smashingmagazine.com/2009/01/20/50-extremely-useful-php-tools/|50 Outils PHP Extrêmement utile]] | ||
+ | |||
====Java ==== | ====Java ==== | ||
+ | * [[https://sourceforge.net/projects/findbugs/|findbugs]] | ||
+ | * [[http://checkstyle.sf.net/|Checkstyle]] | ||
+ | * [[https://sourceforge.net/projects/pmd/|pmd]] | ||
+ | * jlint | ||
+ | |||
+ | ====Application web==== | ||
+ | * [[http://seleniumhq.org/|Selenium]] | ||
+ | * XSSer ([[http://xsser.sourceforge.net/|site]]) | ||
===== Liens ===== | ===== Liens ===== | ||
- | * (en) [[http://en.wikipedia.org/wiki/Category:Static_code_analysis|Les analyseurs de code static(wikipedia)]] | + | * (en) [[http://en.wikipedia.org/wiki/Category:Static_code_analysis|Les analyseurs de code static (wikipedia)]] et [[http://en.wikipedia.org/wiki/Dynamic_code_analysis|analyseurs de code dynamique]] |
- | * (fr) [[http://fr.wikipedia.org/wiki/Analyse_statique_de_programmes|Analyse statique de programmes]] | + | * (fr) [[https://fr.wikipedia.org/wiki/Analyse_statique_de_programmes|Analyse statique de programmes]] |
- | * (en) [[http://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis|List of tools for static code analysis]] | + | * (en) [[https://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis|List of tools for static code analysis]] |
+ | * (en) [[http://www.spinroot.com/static/|Static Source Code Analysis Tools for C]] | ||
+ | * (en) [[http://open-tube.com/10-free-tools-for-static-code-analysis/|10+ free tools for static code analysis]] (free = pas forcément open source) | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | //Contributeurs : [[:utilisateurs:psychederic|Psychederic]].// |