나는 루비의 싱글 톤 클래스에서 일하고 있었고 단지 그것이 작동하는 방식을 기억했다. factory_girl. 그들은 그것을 모두 사용할 수 있도록 긴 방법Factory.create(...)
및 짧은 방법Factory(...)
나는 그것에 대해 생각하고 그들이 어떻게 클래스를 만들 었는지 궁금했습니다. Factory
또한 메소드처럼 작동합니다.루비는 메소드와 클래스가 같은 이름을 어떻게 허용합니까?
그들은 단순히과 같이 두 번 Factory
을 사용 :
def Factory (args)
...
end
class Factory
...
end
내 질문은 : 어떻게 루비는이 작업을 수행합니까? 그리고이 겉으로는 기발한 패턴을 사용할 때 위험이 있습니까?