This product is not supported for your selected Datadog site. ().
Cette page n'est pas encore disponible en français, sa traduction est en cours.
Si vous avez des questions ou des retours sur notre projet de traduction actuel, n'hésitez pas à nous contacter.

Metadata

ID: java-inclusive/function-definition

Language: Java

Severity: Notice

Category: Best Practices

Description

This rule promotes inclusive language by flagging the use of potentially offensive or outdated terms in function and parameter names. Words like “blacklist”, “whitelist”, “master”, and “slave” carry historical and social connotations that can be exclusionary and lead to a less welcoming codebase. Adopting inclusive terminology improves code readability, reflects modern best practices, and fosters a more diverse and respectful development environment.

How to remediate

To fix this violation, replace the discouraged terms with their inclusive alternatives. For “blacklist,” use “denylist” or “blocklist.” For “whitelist,” use “allowlist” or “safelist.” For “master,” use “primary,” “main,” or “controller.” For “slave,” use “secondary,” “replica,” or “worker.” Applying these changes ensures your code aligns with contemporary language standards and promotes clarity without cultural bias.

Non-Compliant Code Examples

class MyClass {
    void blacklist() {

    }

    int method(int WhiteList) {

    }
}
class Blacklist {
    void blacklist() {

    }

    int BlackList(int WhiteList) {

    }
}

Compliant Code Examples

class AllowList {
    void allowlist() {

    }

    int AllowList(int AllowList) {

    }
}
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains