값을 밀어내는 시작점
이벤트, HTTP 응답, 타이머가 `Observable<T>` 형태로 흐름을 시작합니다.
Observable<Event>
소스가 내보낸 타입은 `map`, `filter`, `switchMap`을 지나 구독자가 받는 타입으로 좁혀지거나 바뀝니다.
이벤트, HTTP 응답, 타이머가 `Observable<T>` 형태로 흐름을 시작합니다.
Observable<Event>
연산자는 입력 타입을 다음 단계에 맞는 출력 타입으로 바꾸거나 좁힙니다.
구독 콜백은 최종 파이프가 보장한 값 타입을 기준으로 작성합니다.
컴포넌트 해제나 요청 취소 시 구독을 닫아 중복 처리와 메모리 누수를 막습니다.