ppobbi-study / CS_Study_Hub

CS 스터디 레포입니다.
3 stars 6 forks source link

아시는 디자인 패턴 하나 설명해주세요 #71

Open freakFlow opened 5 months ago

kimmainsain commented 5 months ago

답변

전자의 경우

후자의 경우

SunheeYoon96 commented 5 months ago

답변

Builder 패턴에 대해서 설명하겠습니다. 빌더 패턴(Builder Pattern)은 복잡한 객체의 생성과정과 표현방법을 분리하여 인스턴스를 만드는 생성패턴입니다. 생성자에 들어갈 매개변수를 메서드로 하나하나 받고 마지막에 통합 빌드해서 객체를 생성하는 방식입니다. 빌더패턴을 이용하면 데이터의 순서에 상관없이 객체를 만들어내며 일관성(필수 매개변수)의 문제와 불변성(Setter의 노출X)의 문제가 보완됩니다. 코드의 가독성면에서도 우수합니다.

freakFlow commented 5 months ago

옵저버 패턴 어떤 객체의 상태가 변경될 때마다 옵저버들에게 변화를 알려주는 패턴 sns의 팔로우 등 주로 이벤트 기반 시스템이나 MVC 패턴에서 사용됨 장점으로는 객체의 상태변화를 주기적으로 감지하지 않고도 알 수 있다. 단점으로는 옵저버는 알림 순서를 제어할 수 없고, 무작위 순서로 알림을 받게된다.