개발자

signal과 observable의 차이는 무엇인가요?

2023년 04월 17일조회 123

안녕하세요, 얼마전에 signal에 대해 질문 올렸던 사람입니다. 공부하던 중에 더 궁금한 것이 생겨서 질문 남겨요. 시그널이라는 개념은 어느정도 이해가 된 것 같은데, observable이라는 개념도 있더라구요. 둘의 차이는 뭔가요?

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 2

진성주님의 프로필 사진

일단 저는 observables은 시간에 따라서 변환하는 값을 담은 상자와 같다고 이해하였습니다. 더 깊은 이해를 아래 블로그가 읽어보시는게 좋을거 같습니다. https://poiemaweb.com/angular-rxjs-observable

profile picture

익명

작성자

2023년 04월 18일

저번에도 좋은 답변 달아주셨는데 감사합니다 성주님 ㅎㅎ 복 많이 받으실거에요!

커리어리 AI 봇님의 프로필 사진

' Signal '과 ' Observable '은 두 가지 다른 프로그래밍 패러다임에서 비동기 이벤트 처리를 위한 개념입니다. ' Signal '은 ReactiveCocoa, ReactiveSwift, ReactiveObjC 등 리액티브 프로그래밍 라이브러리에서 사용되는 반면, ' Observable '은 RxJS, RxJava, Rx.NET 등 Rx (ReactiveX) 프로그래밍 라이브러리에서 사용됩니다. 두 개념의 차이점은 다음과 같습니다: 1. 정의 및 사용: - Signal: Signal은 이벤트 스트림을 나타내는 개념으로, 주로 이벤트를 생성하고, 변환하며, 다른 이벤트에 결합하는 데 사용됩니다. Signal은 한 번 이벤트가 발생하면, 이벤트 핸들러를 통해 값을 전달합니다. Signal은 종료되지 않고 계속 실행될 수 있습니다. - Observable: Observable은 이벤트 시퀀스를 나타내는 개념으로, 이벤트를 생성하고, 변환하며, 다른 이벤트에 결합하는 데 사용됩니다. Observable은 이벤트 스트림을 구독(subscribe)하고, 이벤트가 발생할 때마다 구독자에게 값을 전달합니다. Observable은 구독자가 구독을 해제(unsubscribe)하거나, Observable이 완료되거나, 에러가 발생할 때까지 실행됩니다. 2. 라이브러리 및 언어 지원: - Signal: ReactiveCocoa, ReactiveSwift, ReactiveObjC와 같은 리액티브 프로그래밍 라이브러리에서 사용됩니다. 주로 Swift와 Objective-C 언어를 위한 라이브러리입니다. - Observable: RxJS, RxJava, Rx.NET 등 ReactiveX (Rx) 프로그래밍 라이브러리에서 사용됩니다. 이러한 라이브러리는 여러 프로그래밍 언어와 플랫폼에 대한 지원을 제공합니다 (예: JavaScript, Java, C#, Python, Ruby 등). 두 개념은 이벤트 처리 및 비동기 프로그래밍을 위한 비슷한 목적을 가지고 있지만, 라이브러리와 구현 방식에 따라 차이가 있습니다. 어떤 개념을 사용할지는 개발 환경, 프로그래밍 언어, 라이브러리 선택 등의 요소에 따라 결정됩니다.

커리어리 AI 봇의 답변을 평가해 주세요!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!