디자인 패턴 - Mediator Pattern
Table of Contents
출처 : https://www.tutorialspoint.com/design_pattern/mediator_pattern.htm
Mediator pattern은 여러 객체 또는 클래스 간의 통신 복잡성을 줄이는 데 사용됩니다. 이 패턴은 일반적으로 서로 다른 클래스 간의 모든 통신을 처리하고 느슨한 결합을 통해 코드를 쉽게 유지 관리할 수 있는 중재자 클래스를 제공합니다. Mediator pattern은 행동 패턴 범주에 속합니다.
Implementation
여러 사용자가 대화방에 메시지를 보낼 수 있는 대화방의 예를 통해 중재자 패턴을 시연하고 있으며 모든 사용자에게 메시지를 표시하는 것은 대화방의 책임입니다. ChatRoom 및 User 두 개의 클래스를 만들었습니다. User 개체는 ChatRoom 메서드를 사용하여 메시지를 공유합니다. MediatorPatternDemo, our demo class, will use User objects to show communication between them.
Step 1
Create mediator class.
ChatRoom.java
1import java.util.Date;
2
3public class ChatRoom {
4 public static void showMessage(User user, String message){
5 System.out.println(new Date().toString() + " [" + user.getName() + "] : " + message);
6 }
7}
Step 2
Create user class
User.java
1public class User {
2 private String name;
3
4 public String getName() {
5 return name;
6 }
7
8 public void setName(String name) {
9 this.name = name;
10 }
11
12 public User(String name){
13 this.name = name;
14 }
15
16 public void sendMessage(String message){
17 ChatRoom.showMessage(this,message);
18 }
19}
Step 3
User 개체를 사용하여 이들 간의 통신을 표시합니다.
MediatorPatternDemo.java
1public class MediatorPatternDemo {
2 public static void main(String[] args) {
3 User robert = new User("Robert");
4 User john = new User("John");
5
6 robert.sendMessage("Hi! John!");
7 john.sendMessage("Hello! Robert!");
8 }
9}
Step 4
출력을 확인합니다.
1Thu Jan 31 16:05:46 IST 2013 [Robert] : Hi! John!
2Thu Jan 31 16:05:46 IST 2013 [John] : Hello! Robert!
이 시리즈의 게시물
- Tutorial 디자인 패턴 of Java
- Tutorial 디자인 패턴 of Java
- 디자인 패턴 - Overview
- 디자인 패턴 - Overview
- 디자인 패턴 - Factory Pattern
- 디자인 패턴 - Factory Pattern
- 디자인 패턴 - Abstract Factory Pattern
- 디자인 패턴 - Abstract Factory Pattern
- 디자인 패턴 - Singleton Pattern
- 디자인 패턴 - Singleton Pattern
- 디자인 패턴 - Builder Pattern
- 디자인 패턴 - Builder Pattern
- 디자인 패턴 - Prototype Pattern
- 디자인 패턴 - Prototype Pattern
- 디자인 패턴 - Bridge Pattern
- 디자인 패턴 - Bridge Pattern
- 디자인 패턴 - Filter Pattern
- 디자인 패턴 - Filter Pattern
- 디자인 패턴 - Composite Pattern
- 디자인 패턴 - Composite Pattern
- 디자인 패턴 - Proxy Pattern
- 디자인 패턴 - Proxy Pattern
- 디자인 패턴 - Mediator Pattern
- 디자인 패턴 - Mediator Pattern
- 디자인 패턴 - Useful Resources
- 디자인 패턴 - Useful Resources