1) 싱글턴 패턴
의 핵심 구조에는 싱글턴 클래스라는 특수 클래스만 포함되어 있습니다. 싱글톤 모드는 시스템에 클래스의 인스턴스가 하나만 있고 해당 인스턴스에 외부 세계에서 쉽게 액세스할 수 있도록 보장하여 인스턴스 수를 쉽게 제어하고 시스템 리소스를 절약할 수 있습니다.
응용 시나리오: 특정 클래스의 객체 하나만 시스템에 존재할 수 있기를 원한다면 싱글톤 모드가 가장 좋은 솔루션입니다.
2) 팩토리 패턴
팩토리 패턴은 주로 객체 생성을 위한 인터페이스를 제공합니다.
적용 시나리오는 다음과 같습니다.
a. 코딩할 때 어떤 클래스 인스턴스를 생성해야 하는지 예측하는 것은 불가능합니다.
b. 시스템은 제품 클래스 인스턴스가 어떻게 생성되고 결합되고 표현되는지에 대한 세부 사항에 의존해서는 안 됩니다.
3) 전략 패턴
전략 패턴: 알고리즘 계열을 정의하고 서로 교체할 수 있도록 별도로 캡슐화합니다. 이 모드를 사용하면 알고리즘을 사용하는 클라이언트와 독립적으로 알고리즘을 변경할 수 있습니다.
적용 시나리오는 다음과 같습니다.
a. 한 가지를 달성하기 위한 솔루션은 다양합니다.
b. 어떤 구현을 사용할지는 언제든지 결정할 수 있습니다.
c. 향후 더 많은 계획이 추가될 수 있습니다.
D. 전략 모델은 요금제 변경이 요금제를 사용하는 고객에게 영향을 미치지 않도록 방지합니다.
예제 비즈니스 시나리오는 다음과 같습니다.
로그는 일반적으로 후속 관리를 용이하게 하기 위해 데이터베이스에 기록되어야 합니다. 그러나 데이터베이스에 로그를 기록할 때 오류가 발생할 수 있습니다. 예를 들어 데이터베이스에 일시적으로 연결할 수 없는 경우 먼저 기록하십시오. 파일. 데이터베이스와 파일에 로그를 쓰는 알고리즘에는 두 가지가 있지만 호출자는 신경 쓰지 않고 쓰기만 담당합니다.
4) 관찰자 패턴
게시/구독 패턴이라고도 알려진 관찰자 패턴은 개체 간의 일대다 종속성을 정의합니다. 개체의 상태가 변경되면 해당 종속성이 모두 통보되고 자동으로 갱신됩니다.
적용 시나리오는 다음과 같습니다.
a. 개체의 상태를 업데이트하려면 다른 개체의 동시 업데이트가 필요하며 다른 개체의 수는 동적으로 가변적입니다.
b. 개체는 다른 개체의 세부 정보를 알지 못한 채 자신의 업데이트만 다른 개체에 알리면 됩니다.
5) 반복자 패턴
반복자 패턴은 객체의 내부 표현을 노출하지 않고 집계 객체의 개별 요소에 순차적으로 액세스하는 방법을 제공합니다.
응용 시나리오는 다음과 같습니다.
컬렉션 개체에 액세스해야 하고 해당 개체가 무엇인지에 관계없이 순회해야 하는 경우 반복자 패턴 사용을 고려해야 합니다. 실제로 stl 컨테이너는 반복자 패턴의 좋은 예입니다.
6) 템플릿 메서드 패턴
템플릿 메서드 패턴은 작동 중인 알고리즘의 뼈대를 정의하고 일부 단계를 하위 클래스로 연기합니다. 템플릿 메서드를 사용하면 하위 클래스가 특정 단계의 구조를 변경하지 않고 알고리즘을 재정의할 수 있습니다.
적용 시나리오는 다음과 같습니다. 일부 기능의 경우 개체마다 다른 효과가 표시되지만 기능 프레임워크는 동일합니다.
위 내용은 Java 개발의 디자인 패턴은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!