[ENG SUB] async await is so good... but WHY?

แชร์
ฝัง
  • เผยแพร่เมื่อ 29 ส.ค. 2024
  • This is the second video of the Promise trilogy.
    Let's briefly talk about async await.
    And I want to talk briefly about why async await is more comfortable compared to promise chaining.

ความคิดเห็น • 8

  • @marimoony
    @marimoony 3 ปีที่แล้ว

    공부하는데 구글에서 검색했을때 낯설고 어려운 언어들로 이해하기 어려워서 유튜브로 오게 되었습니다.
    또한 이해하기 쉽도록 자막까지 붙여주셔서 어렵지 않게 이해하는 것 같습니다.
    영상 전부 유익한 영상 제공해 주셔서 감사합니다!!

  • @bitcoin-trash
    @bitcoin-trash ปีที่แล้ว +1

    ㅋㅋㅋ 이분 쓰레드와 프로세스 구분이 안되시는 분이네... 뮤텍스 세마포어 크리티컬섹션 공부를 하면 좋은이유가 명확해 짐다😂

  • @user-xi4yn8rq4k
    @user-xi4yn8rq4k 4 ปีที่แล้ว

    비동기 처리를 따로 하여야 하는 이유에 대해 생각해본적이 없는데 미처 생각지도 못했던 부분을 알려주는 명쾌한 영상이네요! 개발자가 비동기 처리를 해야하는 이유는, 자바스크립트 런타임환경(이벤트루프) 때문이죠! 그래서 조금더 동기식 코드와 흡사한 Async, Await 을 개발자들은 선호하게 될수 밖에 없구요.

    • @TaehoonMoon
      @TaehoonMoon  4 ปีที่แล้ว

      보통은 비동기 처리를 위해서 따로 작업을 하는데 자바스크립트 사용할 때는 반대로 default가 거의 비동기 API이다보니 동기식 코드처럼 보이게끔 하기 위한 작업을 따로 원하게 된 셈이죠ㅎㅎ async await 덕분에 정말 많은게 편해지긴 했습니다.

  • @미엘뀨
    @미엘뀨 4 ปีที่แล้ว

    언제나 잘 보고 갑니다~ 이 좋은 영상이 왜 묻혀있는지 모르겠습니다.. 제 생각에 async 키워드를 붙여야 하는 이유가 해당 함수는 시스템적으로 다른 루틴(큐에 넣어서 순차 처리한다든가?)을 필요로 하기 때문임은 아닐까요?

    • @TaehoonMoon
      @TaehoonMoon  4 ปีที่แล้ว +6

      감사합니다. 🙂
      이건 영상 마지막 질문에 대한 간단한 답변입니다.
      혹시 다른분들 더 고민해보고 싶으시다면, 나중에 보시면 되겠습니다.
      크게 볼 때 다른 루틴이 필요하기 때문인게 맞습니다.
      그런데 이건 자바스크립트다보니 좋은 점이긴 한데, 생각보다 더 단순합니다.
      일단 기능적으로 async prefix 를 붙이면 해당 함수는 Promise 인스턴스를 반환하게 됩니다.
      이건 코드 내부에서 await 을 사용하든, 사용하지 않든 마찬가지입니다.
      async 여부에 따라서 함수의 return type 이 바뀌게 되는 셈이죠.
      어떻게 구현만 하면 된다, 라고 생각하면 async 없이 await 만 사용하게 만드는게 불가능하진 않을겁니다.
      그런데, 지금 스펙대로라면.. 함수의 내부 코드를 파싱해서 await 을 사용한게 있는지 확인을 하고, await 이 있으면 프로미스를 반환, 없으면 기존 return value 를 그대로 반환하게 만들어야겠죠.
      코드를 해석하고 돌려줄 인터프리터 레벨에서도 이건 상당히 번거로운 일인데, 코드 가독성 측면에서도 마찬가지가 됩니다.
      프로그래머 입장에서도 특정 함수의 return type이 프로미스인지 아닌지를 알려면 내부 코드를 모두 읽어봐야 할테니까요.
      하지만, function 앞에 async prefix를 넣으면, 반환값(return value)의 타입이 어떻게 되는지 매우 명확해집니다. (동적 타입 언어다보니 value 자체가 뭘 의미하는지 확인은 해야겠지만요.ㅎㅎ)
      코드를 돌리는 시스템 입장에서도, 코드를 작성하거나 이해하는 프로그래머 입장에서도 async prefix가 있는 편이 더 쉽고 명확합니다.
      다른 관점에서도 이야기를 할 수 있을거 같긴 한데.. 대략 async await 기능을 직접 만든다고 생각해보면 이 설명이 적절하지 않을까 생각합니다.
      이 정도면 async 를 추가하고 싶은 유혹을 이기기 힘들지 않을까 싶거든요.ㅎㅎ

    • @Leejw1980
      @Leejw1980 2 ปีที่แล้ว

      @@TaehoonMoon감사합니다

  • @HongJeKim
    @HongJeKim 3 ปีที่แล้ว +2

    1:43 본론