답변
facade pattern은 더 크고 복잡한 코드베이스에 대한 단순화 된 인터페이스입니다. 코드베이스는 단일 클래스 이상일 수 있습니다. 정면은 단지 당신에게 그것에 간단한 인터페이스를 제공합니다.
Abstraction은 개념을 나타 내기 위해 사용되지만 특정 인스턴스에 구속되는 것은 아닙니다. (즉 : 추상 클래스). 이것은 단순화 (외관 패턴처럼)를 의미하는 것이 아니라 '공통'인터페이스 또는 표현을 만드는 것을 의미합니다.
Facade은 잘 정의 된 인터페이스 뒤에있는 클라이언트에서 패키지/모듈 내부의 내부 정보를 숨기는 특정 디자인 패턴입니다. 일반적으로 하나의 공통 인터페이스 뒤에 몇 개의 인터페이스/클래스를 숨 깁니다.
'추상화'는 일반적인 용어로, 외부 세계로부터 무언가의 구체적인 세부 사항을 숨기는 것을 의미합니다.
그래서이 두 단어는 서로 바꿔 쓸 수없는 용어입니다.
외관은 매우 구체적인 GoF 디자인 패턴입니다. 본질적으로, 그것은 응용 프로그램의 본체에서 지나치게 복잡한 기능을 숨기는 것에 관한 것입니다.
추상화는 클라이언트의 서비스 기능을 숨기는 것과 관련된 애매한 용어입니다.
나에게의 추상화는 사물들의 공통 부분을 가져 와서 그것들로부터 기본 사물을 생성하는 것을 의미하며, 그 모음은 부모 집단과 같이 일종의 그릴 수 있습니다.
façade는 문자 그대로 얼굴이기 때문에 기본 클래스와 유사합니다. façade는 인터페이스에 가깝기 때문에 인터페이스를 사용하는 것과 관련 될 필요가 없습니다. 나는 그것을 가면처럼 생각한다. 내 수업에는 "처분 할 수있는"가면이있을 것입니다.
내 생각에 추상 패턴을 사용하면 façade 패턴으로 클래스를 유사하게 볼 수있는 계층 구조를 만들 수 있습니다.
- 1. 추상화와 캡슐화의 차이점은 무엇입니까?
- 2. 자체 추상화와 함께 IoC 고급 기능 사용
- 3. 모델의 다형성 추상화와 레일의 잠재적 인 MI?
- 4. Java 개발자 학습 엔터프라이즈 C++. JDBC 추상화와 동등한가요?
- 5. 정적 코드 분석은 Spring 및 다른 추상화와 얼마나 잘 작동합니까?
- 6. Databinder.Eval과 Container.DataItem의 차이점은 무엇입니까?
- 7. static_cast와 Implicit_cast의 차이점은 무엇입니까?
- 8. NSNumber와 NSInteger의 차이점은 무엇입니까?
- 9. Phing과 PHPUnderControl의 차이점은 무엇입니까?
- 10. WPF와 WinForms의 차이점은 무엇입니까?
- 11. CreateWnd와 CreateWindowHandle의 차이점은 무엇입니까?
- 12. ImageMagick과 GraphicsMagick의 차이점은 무엇입니까?
- 13. Pingback과 Trackback의 차이점은 무엇입니까?
- 14. @property와 @synthesize의 차이점은 무엇입니까?
- 15. php.ini와 .htaccess의 차이점은 무엇입니까?
- 16. 메서드와 선택기의 차이점은 무엇입니까?
- 17. 탄소와 코코아의 차이점은 무엇입니까?
- 18. String.Intern과 String.IsInterned의 차이점은 무엇입니까?
- 19. Int32와 UInt32의 차이점은 무엇입니까?
- 20. Knockout.js와 Rx.js의 차이점은 무엇입니까?
- 21. Server.Transfer와 Response.Redirect의 차이점은 무엇입니까?
- 22. MSP430과 MSP430X의 차이점은 무엇입니까?
- 23. COM과 DCOM의 차이점은 무엇입니까?
- 24. DomainKeys와 DKIM의 차이점은 무엇입니까?
- 25. 면도기와 ASPX의 차이점은 무엇입니까?
- 26. 이 코드의 차이점은 무엇입니까?
- 27. Setting.settings와 web.config의 차이점은 무엇입니까?
- 28. Framework.Triggers와 Style.Triggers의 차이점은 무엇입니까?
- 29. PHP와 표현의 차이점은 무엇입니까?
- 30. ListView와 GestureListView의 차이점은 무엇입니까?