Ruby:
코드를 함수로 구성하기
방법:
사용자에게 인사하는 간단한 스크립트를 작성한다고 상상해 보세요:
def greet(name)
"안녕하세요, #{name}!"
end
puts greet("Alice") # 출력: 안녕하세요, Alice!
puts greet("Bob") # 출력: 안녕하세요, Bob!
또는 원의 면적을 계산할 수도 있습니다:
def circle_area(radius)
Math::PI * radius ** 2
end
puts circle_area(5) # 출력: 78.53981633974483
더 깔끔하고 다루기 쉽죠?
깊이 탐구
함수의 개념, 루비에서는 메소드로 알려져 있습니다, 새로운 것이 아닙니다 - 프로그래밍 자체만큼 오래됐습니다. 1950년대로 돌아가서, 그 당시에는 서브루틴으로 알려져 있었던 것들이 중복을 줄이기 위해 도입되었습니다.
대안이 있다구요? 물론입니다, 인라인 코드가 있을 수 있고, 클래스와 객체를 사용하여 OOP로 갈 수도 있으며, 람다와 프록스를 사용하여 함수형으로 갈 수도 있습니다. 그러나 함수는 정돈된 코드의 기본입니다. 성능을 원하십니까? 함수 내의 지역 변수는 빠르고, 함수는 return
을 사용하여 즉시 값을 반환할 수 있습니다.
구현 측면에서, def
로 함수를 정의하고 end
로 끝낼 수 있습니다. 기본 매개변수를 설정할 수 있고, 가변 함수에 스플랫 연산자를 사용할 수 있으며, 그 이상도 가능합니다. 함수는 원하는 만큼 단순하거나 복잡할 수 있습니다.