예전에는 조금 어렵다고 느껴졌었지만 최근에 프로젝트 하면서 이런 부분들을 좀 다루어 보았고, 다루어 보니 생각했던 것보다 더 중요한 부분이라 생각되어 포스팅을 하려고 한다. 동기(Synchronous) vs 비동기(Asynchronous) 동기와 비동기의 가장 큰 차이는 '호출되는 함수의 작업 종료를 누가 신경쓰는지' 이다. 동기 동기의 경우 호출되는 함수의 작업 종료를 호출 하는 함수가 신경쓴다. 그림에는 B가 종료되는 시점에서 B에서 A로 화살표가 가고 있지만, 이는 B가 작업 종료를 알려준다의 의미가 아니라, 제어권을 반환한다고 생각하는게 더 이해하기 쉬울 듯 하다. 실제로는 A가 B에게 "너 끝났니?" "너 끝났니?" "너 끝났냐고" 반복해서 물어보면서 B의 종료를 확인한다. 이는 즉, A가 B의..