한 스타일은 함께 이렇게 만 사용하는 것이 그룹 방법이다 private
과 protected
클래스 당 한 번 기껏. 또 다른 스타일은 메서드 정의 바로 뒤에 가시성을 지정하는 것입니다.
class Example
def my_private_method
end
private :my_private_method
def my_public_method
end
end
Ruby 2.1.0부터는 def
메서드 이름을 기호로 반환하므로보다 간소화 된 스타일이 가능합니다.
class Example
private def my_private_method
end
def my_public_method
end
protected def my_protected_method
end
private_class_method def self.my_private_class_method
end
end
(주 우리가 사용하는 private_class_method
클래스 메소드 - 그렇지 않으면 우리가 얻을 것 NameError: undefined method
때문에 private
예상하는 인스턴스 메서드에만 인스턴스 메서드의 가시성에 영향을 원래의 예처럼 매크로로 사용하는 경우에도..)
이 인라인 가시성 스타일이 가장 마음에 듭니다. 원하는대로 메서드를 구성 할 수 있기 때문입니다. 새로운 방법을 잘못된 위치에 추가하고 실수로 비공개로 만들 위험을 줄입니다.
클래스 메서드 구문의 경우 대신 다음과 같이 처리 할 수 있습니다.
class Example
private def my_private_method
end
class << self
private def my_private_class_method
end
end
end
private def my_method...end