laravel의 "facade" 및 "contract" 문제:두 가지 질문이 있습니다.1. 이 두 가지의 사용 시나리오는 무엇입니까? 2. 이 두 단어가 왜 사용되는지 이해할 수 없습니다. 이 두 단어가 기능과 관련이 있는 것 같나요?
간단히 말하면: Appearance(당신이 말하는 Facade)는 Appearance 모드의 구현입니다. 外观(你说的门面)是外观模式的实现。协议(你说的契约)是工厂方法模式或抽象工厂模式프로토콜(말하는 계약)은 팩토리 메서드 패턴 또는 추상 팩토리 패턴의 구현입니다.
Appearance
Facade
Appearance 모드
外观
门面
外观模式
协议
契约
工厂方法模式
抽象工厂模式
프로토콜
계약
팩토리 메서드 패턴
추상 팩토리 패턴
디자인 패턴을 읽으면 많은 것을 얻을 수 있습니다.
먼저 종속성 주입 컨테이너를 사용하는 방법을 배워야 합니다.
Laravel의 Facade는 컨테이너에서 서비스를 호출하는 지름길입니다.
Facade가 없으면 이와 같은 서비스/객체를 가져온 다음 다음을 호출해야 할 수도 있습니다.
컨테이너에 'some_service'를 등록했으므로 컨테이너가 인스턴스를 만들 수 있습니다. 'some_service',所以容器能make一个实例给你。
'some_service'
만들
make
Facade只是用静态方式简化了这个使用过程,底层用__callStatic
__callStatic
으아악
Facade는 간단히 말해서 class_alias 함수를 사용하여 서비스 컨테이너에 바인딩된 서비스에 별칭을 제공하는 것입니다. 예를 들어 App은 Container 클래스에 해당합니다.
계약은 이름에서 알 수 있듯이 양측이 인식하고 준수하는 규정이며 "인터페이스"에도 이러한 특성이 있습니다. 포스터에서는 "인터페이스 지향 프로그래밍"이 어렵습니다. 명확하게 설명해주세요. 포스터는 더 많은 연습과 경험이 필요합니다. 양해해 주세요...
간단히 말하면:
Appearance
(당신이 말하는Facade
)는Appearance 모드
의 구현입니다.外观
(你说的门面
)是外观模式
的实现。协议
(你说的契约
)是工厂方法模式
或抽象工厂模式
프로토콜
(말하는계약
)은팩토리 메서드 패턴
또는추상 팩토리 패턴
의 구현입니다.디자인 패턴을 읽으면 많은 것을 얻을 수 있습니다.
먼저 종속성 주입 컨테이너를 사용하는 방법을 배워야 합니다.
Laravel의 Facade는 컨테이너에서 서비스를 호출하는 지름길입니다.
Facade가 없으면 이와 같은 서비스/객체를 가져온 다음 다음을 호출해야 할 수도 있습니다.
으아악컨테이너에
'some_service'
를 등록했으므로 컨테이너가 인스턴스를만들
수 있습니다.'some_service'
,所以容器能make
一个实例给你。Facade只是用静态方式简化了这个使用过程,底层用
Facade는 정적 방식으로 사용 프로세스를 단순화합니다. 하단 레이어는__callStatic
__callStatic
을 사용하여 함수와 매개변수를 서비스 인스턴스에 전달합니다.으아악
Contract는 프레임워크와 함께 제공되는 인터페이스 모음으로, 종속성 주입을 통해 구현할 수 있습니다.으아악
Facade와 Contract는 종속성 주입 컨테이너를 사용하는 다른 방법일 뿐입니다. Facade를 사용하려면 컨테이너로 이동하여 직접 가져오고(컨테이너를 서비스 로케이터로 사용) Contract를 사용하려면 컨테이너가 종속성을 주입할 때까지 기다립니다. . 🎜Facade는 간단히 말해서 class_alias 함수를 사용하여 서비스 컨테이너에 바인딩된 서비스에 별칭을 제공하는 것입니다.
예를 들어 App은 Container 클래스에 해당합니다.
계약은 이름에서 알 수 있듯이 양측이 인식하고 준수하는 규정이며 "인터페이스"에도 이러한 특성이 있습니다. 포스터에서는 "인터페이스 지향 프로그래밍"이 어렵습니다. 명확하게 설명해주세요. 포스터는 더 많은 연습과 경험이 필요합니다. 양해해 주세요...