꼭두각시의 포함과 요구의 차이점은 무엇입니까?


8

다음 코드가 있으면 꼭두각시 수업이 있습니다.

class A {
  require B

....
} 

순환 종속성 오류가 발생합니다. 만약 내가 가지고 있다면:

class A {
  include B

....
} 

모든 것이 잘 작동합니다

답변:


18

실제로는 매우 다릅니다. 말하자면 require B수단 B은 반드시 앞에 와야합니다 A. 따라서 무언가가로 B바뀌면 순환 의존성을 초래할 수 있습니다 require A. 그리고 B전혀 포함되어 있지 않으면 의존성 누락 오류가 발생합니다.

반면에, include B단지 B적용될 때마다 A적용될 것이라고 말하면, 그들 사이의 순서는 언급되지 않습니다.


하지 않습니다 require B실제로 수단 B전에 와야을 A?
Sebastian Krysmanski

@SebastianKrysmanski 어. :)
Daniel C. Sobral

10

이것은 꼭두각시 메일 링리스트에서 묻고 답했다 :

카탈로그를 적용해야 할 때 차이점이 분명합니다. include를 사용하면 include 시점에 내용을 평가했지만 모든 자원은 include 후에 명시 적으로 의존해야합니다. 요구 사항-의존성이 만들어 지지만 조심해야하며 이것이 원하는 결과인지 확인해야합니다.

-켄 이발사 요구 대 포함?

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.