Error Prone is a static code analyzer and Java compiler extension that identifies common programming mistakes during the build process. It functions as a compiler wrapper that flags potential errors as compile-time failures to prevent bugs from reaching execution. The tool integrates directly into the Java compilation workflow to provide compile-time validation. It allows for the definition of custom linting rules and analysis checks to enforce specific coding standards and detect prohibited API usage. The system utilizes abstract syntax tree analysis and type-aware pattern matching to inspe
Pylint is a static code analyzer for Python that scans source code for errors, coding standard violations, code smells, and type-related issues without executing the program. It functions as a plugin-based linter framework, allowing users to extend its analysis capabilities with custom or third-party checks for project-specific rules and framework support. The tool also includes a duplicate code detector that identifies identical or near-identical code blocks across a project to help reduce redundancy. Beyond its core linting functionality, Pylint can generate UML class and package diagrams f
JSHint is a JavaScript static analysis tool and linter designed to detect errors and enforce coding standards. It functions as a syntax validator that scans source code to identify potential logic problems and programming mistakes before the code is executed. The tool provides a command line interface for analyzing files and directories. It supports the export of analysis results into standardized formats such as Checkstyle for integration with external build tools. Analysis is managed through a system of linting rule management and environment global configuration. This includes the ability
Detekt is a static analysis tool, code quality linter, and complexity analyzer for Kotlin source code. It functions as a code smell detector and static scanner designed to identify potential bugs, design flaws, and violations of coding standards without executing the program. The tool differentiates itself through the use of issue baselining, which allows users to create a snapshot of existing legacy code issues to filter out old violations and focus on preventing new regressions. It further supports extensibility via a plugin-based system that allows for the integration of custom rule sets a
PMD est un analyseur de code statique multi-langage utilisé pour identifier les défauts de programmation, les variables inutilisées et le code mort sans exécuter le programme. Il fonctionne comme un détecteur de code smell et un enforcer de standards de codage, garantissant que le code source adhère à des conventions de nommage spécifiques, des exigences structurelles et des guides de style de projet.
Les fonctionnalités principales de pmd/pmd sont : Static Code Analysis, AST Querying, AST XPath Engines, Static Code Analyzers, Code Smell Detectors, Common Bug Detection, Abstract Syntax Tree Parsing, AST Visitor Patterns.
Les alternatives open-source à pmd/pmd incluent : google/error-prone — Error Prone is a static code analyzer and Java compiler extension that identifies common programming mistakes during… pylint-dev/pylint — Pylint is a static code analyzer for Python that scans source code for errors, coding standard violations, code… jshint/jshint — JSHint is a JavaScript static analysis tool and linter designed to detect errors and enforce coding standards. It… detekt/detekt — Detekt is a static analysis tool, code quality linter, and complexity analyzer for Kotlin source code. It functions as… rrrene/credo — Credo is a static analysis tool and linter for Elixir. It functions as a code quality analyzer that scans source code… checkstyle/checkstyle — Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best…