Java 디자인 모드 재시작 - Mediator Pattern
2523 단어 #Java 디자인 모드
중개 모델
정의
하나의 중개 대상으로 일련의 대상 상호작용을 봉인하면 중개자는 각 대상이 현식적으로 서로 인용할 필요가 없게 하고 결합을 느슨하게 하며 그들 간의 상호작용을 독립적으로 바꿀 수 있다.
구조 분석
중개자 모델은 조정자 모델이라고도 하는데 분류도에서 보면 모두 세 부분으로 나뉜다.
코드 예
우리는 채팅방의 실례를 통해 중개자 모델을 보여 준다.예를 들어 여러 사용자가 채팅방에 메시지를 보낼 수 있고 채팅방은 모든 사용자에게 메시지를 표시할 수 있다.우리는 두 종류
ChatRoom
와 User
를 만들 것이다.User
대상은 ChatRoom
방법으로 그들의 소식을 공유한다.MediatorPatternDemo
프레젠테이션 클래스에서는 User 객체를 사용하여 커뮤니케이션을 표시합니다.1. 브로커 클래스 만들기
ChatRoom.java
import java.util.Date;
public class ChatRoom {
public static void showMessage(User user, String message){
System.out.println(new Date().toString()
+ " [" + user.getName() +"] : " + message);
}
}
2. 사용자 클래스 만들기
User.java
public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public User(String name){
this.name = name;
}
public void sendMessage(String message){
ChatRoom.showMessage(this,message);
}
}
3. User 객체를 사용하여 통신 표시
MediatorPatternDemo.java
public class MediatorPatternDemo {
public static void main(String[] args) {
User robert = new User("Robert");
User john = new User("John");
robert.sendMessage("Hi! John!");
john.sendMessage("Hello! Robert!");
}
}
모델의 장단점
장점
결점
중개인은 거대해져서 유지하기 어려워진다.
장면 작업
사용 시 고려 사항
직책이 혼란스러울 때 사용해서는 안 된다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Rails Turbolinks를 페이지 단위로 비활성화하는 방법원래 Turobolinks란? Turbolinks는 링크를 생성하는 요소인 a 요소의 클릭을 후크로 하고, 이동한 페이지를 Ajax에서 가져옵니다. 그 후, 취득 페이지의 데이터가 천이 전의 페이지와 동일한 것이 있...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.