728x90 반응형 분류 전체보기826 2022-07-18-옵저버패턴-1부-패턴소개 01.옵저버패턴 감지하고 상태의 변경을 지켜보는 패턴 여러개의 객체들이 보통 어떤 상태를 감지하고 반응할때 사용 퍼블리시 서브스크라이브 패턴을 쉽게 적용할 수 있음 02.코드로 보는 디자인패턴 적용전 02.1 Client.java public class Client { public static void main(String[] args) { ChatServer chatServer = new ChatServer(); User user1 = new User(chatServer); user1.sendMessage("디자인패턴", "이번엔 옵저버 패턴입니다."); user1.sendMessage("롤드컵2021", "LCK 화이팅!"); User user2 = new User(chatServer); System.. 2022. 7. 18. 2022-07-11-중재자패턴-3부-장점과단점 여러 객체들이 소통하는 캡슐화하는 패턴 01.장점 컴포넌트 코드를 변경하지 않고 새로운 중재자를 현재는 클래스라서 좀 변경이되면 문제가 있지만 인터페이스였으면 메소드 자체는 바뀌지 않을것 각각의 컴포넌트 코드를 보다 간결하게 유지할 수 있음 코드 수정, 변경시 front desk만 요청하면되니 상관이 없음 연예인 같은 경우 매니저를 통해서 일을 하는 것 같이 중재자가 매니저 같은 것임 02.단점 중재자 역할을 하는 클래스의 복잡도와 결합도가 증가함 매니저하는 일이 복잡하는 것 처럼 이자체가 복잡해짐 한쪽으로 몰려 있기때문에 안좋지만 단점보다는 장점이 좋아서 쓴다. 2022. 7. 18. 2022-07-11-중재자패턴-2부-패턴적용하기 01.중재자패턴 적용하기 01.1 FrontDesk import java.time.LocalDateTime; public class FrontDesk { private CleaningService cleaningService = new CleaningService(); public void getTowers(Guest guest, int numberOfTowers) { cleaningService.getTowers(guest.getId(), numberOfTowers); } public String getRoomNumberFor(Integer guestId) { return "1111"; } public void dinner(Guest guest, LocalDateTime dateTime) { resta.. 2022. 7. 18. 2022-07-11-중재자패턴-1부-패턴소개 01.중재자 패턴 여러 객체들간에 의사소통하는것 추상화해서 의존성을 낮추는 패턴 각각의 객체들이 타이트하게 결합되어 있는데 이때 , 코드 구현 변경, 테스트하기 어렵고 재사용하기 어려움 그래서 이를 적용한것을 예로 들면 층간소음, 공동으로 사는 사람과의 의사소통 등 개인 집을 방문하면서 방문하는것이아니고 관리 사무소에 연락하고 일을 진행하는것 같은것 이 중재자 패턴이 적용된 실생활 예시 관재탑에서 이륙, 착륙할때 공간 만들어줘야해서 의사 소통 필요한데 관재탑이라는 중재자를 통해 연락하는것 같은것이 가장 가까이 있는 예시 02.코드로 알아보는 중재자 패턴 02.1 Hotel public class Hotel { public static void main(String[] args) { Guest guest .. 2022. 7. 18. 이전 1 2 3 4 5 6 7 8 ··· 207 다음 728x90 반응형