- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- Administrator's Guide
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
ID: ruby-best-practices/no-for-loops
Language: Ruby
Severity: Warning
Category: Best Practices
In Ruby, it is generally preferred to use iterators, such as each
, map
, select
, and others, over traditional for
loops. This rule is important because iterators are more idiomatic in Ruby and often lead to more concise and readable code. They allow for better encapsulation and scoping, reducing the risk of variable leakage and unexpected side effects.
for
loops, on the other hand, don’t have their own scope for local variables, which can lead to bugs and make the code harder to understand. Therefore, using iterators can make your code safer and easier to maintain.
To comply with this rule, you should replace for
loops with equivalent iterator methods whenever possible. For example, instead of using for elem in arr do
, you can use arr.each do |elem|
. This way, you can maintain the same functionality while adhering to Ruby’s best practices and enhancing your code’s readability and maintainability.
class NonCompliant
def method()
arr = ['foo', 'bar', 'baz']
for elem in arr do
puts elem
end
end
end
arr.each do |elem|
puts elem
end
class Compliant
def method()
arr = ['foo', 'bar', 'baz']
arr.each do
puts elem
end
arr.each { |elem| puts elem }
end
end
|
|
For more information, please read the Code Analysis documentation
Identify code vulnerabilities directly in yourVS Code editor
Identify code vulnerabilities directly inJetBrains products