このページは日本語には対応しておりません。随時翻訳に取り組んでいます。翻訳に関してご質問やご意見ございましたら、お気軽にご連絡ください。

Metadata

ID: ruby-best-practices/avoid-hash-constructor

Language: Ruby

Severity: Notice

Category: Best Practices

Description

The “Use hash literal” rule in Ruby encourages the use of hash literals, {a => b, c => d}, instead of the Hash[] method for creating hashes. This rule is crucial because hash literals are more readable, straightforward, and faster in performance compared to the Hash[] method.

The Hash[] method might be less clear to some developers, especially those new to Ruby, because it’s not immediately obvious that a hash is being created. Moreover, the Hash[] method is slower because it involves method call overhead, which can impact the performance of your application if used extensively.

To adhere to this rule, always use hash literals when creating a new hash. For example, instead of using Hash[a, b, c, d], use {a => b, c => d}. Similarly, if you need to convert an array to a hash, instead of using Hash[ary], use ary.to_h. This will enhance readability and performance of your code.

Non-Compliant Code Examples

Hash[ary]
Hash[a, b, c, d]

Compliant Code Examples

ary.to_h
{a => b, c => d}
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