거꾸로 바라본 세상
Observer Pattern(관찰자 패턴)

Observer Pattern(관찰자 패턴) Observer Pattern은 Observer 라는 Child List를 가지고 있는 주체를 필요로 하는데, 주체는 자신의 메서드 중 하나를 호출해 Observer에게 상태 변경을 알린다. 즉, 주체(Subject)는 이벤트를 발생시키는 역할을 하고, 관찰자(Observer)는 이벤트 수신하는 역할을 한다. 이 패턴은은 이벤트 처리를 기반으로 시스템을 구현할 때 필수고, MVC패턴의 중요한 부분이기도 하다. 대부분의 UI라이브러리는 Observer Pattern을 사용한다. 그리고 런타임 중 객체 사이에 일 대 다(1:N) 의존성을 등록할 수 있다. 장점 응용 프로그램 사이의 결합도를 낮출 수 있다. 효율적으로 이벤트를 배포하는데 도움이 된다. UML 다이어..

article thumbnail
Iterator Pattern

Iterator Pattern - 어떤 하나의 집합의 정보를 하나 씩 호출하여 전체를 순차적(차례대로)으로 검색하여 처리하는 방법으로 Iterator은 무언가를 '반복하다'라는 의미이다. 1. Iterator 인터페이스 - Iterator 인터페이스는 요소를 하나씩 나열하여 루프 변수같은 역할을 수행한다. 쉽게말하면 순서대로 검색하기위한 인터페이스다. Iterator 내의 메소드는 2개 이다. public interface Iterator {boolean hasNext();E next();} hasNext() : 다음요소가 있는지 검사하는 메서드이다. - 다음 요소가 존재한다면 hasNext 반환 값이 true가 되어 조건을 수행하게 되고 false 라면 수행을 멈춘다. next() : 다음요소의 데이터..

Singleton Pattern

1. 싱글톤(Singleton)이란? - 전체 프로그램에서 단 하나의 객체(인스턴스)만 만들도록(생성하도록) 보장해야할 때가 있다. 그래서 단 하나만 생성된다고 해서 싱글톤(Singleton)이라고 부른다.즉, 싱글톤은 공용으로 사용하는 클래스에 적용하면 알맞다. 2. 싱글톤(Singleton) 만드는 법 - 클래스 외부에서 new 연산자로 생성자를 호출할 수 없도록 막아야한다. 이유는 생성자를 호출한 만큼 객체가생성되기 때문이다. (1) 자신의 타입인 정적필드를 하나 선언하고 자신의 객체를 생성해 초기화한다. 그리고 private 접근 제한자를 붙여 필드 값을 변경하지 못하도록 막는다.(2) 생성자자 앞에 pri..