폴링 메커니즘을 없애고 효율적으로 데이터가 있을 때만 데이터가 흘러들어가는 Pub/Sub 패턴을 구현할 수 있게 해주는 디자인 패턴이다.
특정 Subject를 subscribe하고 있는 Observer들에게 notify를 하는 방식
옵저버는 대신 사용이 다 되고 나면 subscription을 해제해줘야(reference count를 0으로 만들어서 가비지 컬렉션의 대상이 되도록) 메모리 릭을 미연에 방지할 수 있다.