Prefer is_a? over kind_of?

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: ruby-best-practices/isa-over-kindof

Language: Ruby

Severity: Notice

Category: Best Practices

Description

The rule “Prefer is_a? over kind_of?” suggests to use the method is_a? instead of kind_of? in your Ruby code. Both is_a? and kind_of? methods check if an object is an instance of a class or its subclasses. However, is_a? is generally preferred due to its clear and concise terminology.

This rule is important for maintaining consistency and readability in your code. Using is_a? makes your code more understandable to other developers because its function is immediately apparent from its name. On the other hand, kind_of? might lead to confusion as it’s not as clear in its function.

To avoid this rule violation, always use the is_a? method when you want to check the class of an object. For example, instead of writing something.kind_of?(Array), you should write something.is_a?(Array). This will make your code easier to read and understand, leading to better maintainability and fewer bugs.

Non-Compliant Code Examples

something.kind_of?(Array)

Compliant Code Examples

something.is_a?(Array)
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis