Signal API, TC 39 Stage 1로 진입

2024년 4월, Signal API가 JavaScript 표준이 되기 위한 첫 단계인 TC39 Stage 1에 진입했습니다. 이는 Signal이 표준화를 향해 한 걸음 더 나아갔음을 의미합니다.


Signal은 상태(State)와 계산(Computed)을 통해 단방향 데이터 흐름을 가능하게 하는 데이터 타입입니다. 상태는 변할 수 있는 기본 데이터 값으로, 사용자 입력이나 서버에서 받아온 데이터 등이 이에 해당합니다. 계산은 상태 값을 기반으로 자동으로 도출되는 값으로, 상태 값이 변경되면 이에 따라 자동으로 다시 계산됩니다.


Signal은 "push then pull" 모델을 사용하여 변경사항을 전파하고 계산을 수행합니다. 이 모델에서는 상태 변경 시 관련된 계산을 즉시 수행하는 대신, 해당 계산이 실제로 필요한 시점까지 지연시킵니다. 이를 통해 불필요한 재계산을 방지하고, 이전 계산 결과를 재사용하는 메모이제이션이 가능해집니다. 또한 과도한 업데이트를 피할 수 있어 애플리케이션의 성능을 최적화하는 데 도움이 됩니다.


Signal의 표준화는 프레임워크와 라이브러리 개발자들에게 특히 도움이 됩니다. 현재는 각 라이브러리마다 Signal의 핵심 로직을 개별적으로 구현하고 있습니다. 예를 들어, Preact는 https://github.com/preactjs/signals 라이브러리를 통해 Signal 개념을 활용하고 있습니다. Signal이 표준화된다면 이러한 중복 작업을 줄일 수 있습니다.


Signal의 표준화 작업이 앞으로 JavaScript 생태계에 어떤 영향을 미칠지 기대됩니다.


https://github.com/tc39/proposal-signals

GitHub - tc39/proposal-signals: A proposal to add signals to JavaScript.

GitHub

GitHub - tc39/proposal-signals: A proposal to add signals to JavaScript.

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 5월 24일 오후 2:22

 • 

저장 3조회 1,446

댓글 0

    함께 읽은 게시물

    쫓아다니지 말고 대응하라

    두 카페가 있다. 두 카페 모두 점원이 주문을 받고 커피를 내리는 카페였다. 그런데, 어느 날 한 카페에서 키오스크를 도입했다. 그렇다면, 여전히 점원이 주문을 받는 카페보다 키오스크를 도입한 카페가 변화에 더 기민하게 대응하는 것일까? 그럴 수도 있고, 그렇지 않을 수도 있다. 변화에 기민하게 대응한다는 건, 변화를 빨리 도입한다는 것과는 다른 이야기이기 때문이다.

    ... 더 보기

    조회 653


    AI와의 페어 코딩은 애자일의 극의.


    예상대로 OpenAI에서 GPT-5를 발표했습니다.

    ... 더 보기

    내가 가본 우리나라 - 지도 색칠 사이트

    ... 더 보기

    < 감정은 내가 아니다. 감정을 나와 분리하라 >

    1

    ... 더 보기

    🍜 짜파게티가 왜 거기서 나와?

    ... 더 보기