동기적 (Synchronous )
일반적으로 프로그래밍에서 코드의 실행은 작성된 코드의 위에서 부터 아래로 진행된다.
이처럼 코드가 위에서부터 아래로 내려가면서 하나가 끝나면 다음 코드가 실행되는 방식을 동기적 처리라고한다.
비동기적 (ASynchronous )
- 이벤트가 언제 일어날지 프로그래머가 전혀 알 수 없는 이벤트를 말한다.
즉, 연속적으로 발생하는 이벤트를 담은 후 완료되는 순서대로 일을 처리하는 실행 순서가 확실하지 않는 것.
사용자의 마우스 클릭도 비동기적 이벤트의 일종이다. 사용자의 마음에 들어가지 않는 한 언제 클릭할지 알 수 없기때문이다.
비동기적 처리가 필요한 이유는?
원하는 데이터를 서버로부터 받아오는 방식의 어플리케이션을 만들었다고 가정해보자.
서버로부터 데이터를 받아서 해당 데이터를 처리해야하므로 받아온 데이터들은 전체 코드 중 최상단에 위치해야 한다.
그런데 만약 비동기적 처리를 하지 않았다면 서버로부터 데이터를 받아오는 코드의 실행을 완전히 끝낸 뒤 코드를 처리 할 것이다.
데이터의 크기가 작고 갯수가 적다면 상관없지만 만약 받아오는 데이터의 크기가 크고 많다면 모든 데이터의 수신을 완료 후 나머지 코드를 실행 할 수 있으므로 프로그램은 사실상 데이터를 받아오는 동안에 멈춰있는것이다 다름이 없다.
그렇게 된다면 언제 끝날지 모르는 요청 때문에 나머지 코드를 실행시키지 못하고 사용자를 기다리게 하는 아주 불친절한 프로그램이 되어버린다. 데이터를 수신할때마다 기다려야 한다면 누구도 그 어플리케이션을 사용하지 않을것이다.
이러한 사용자의 불편을 없애기위해 데이터의 수신과 기다려야하는 코드들을 비동기적으로 처리하는것이다.
'프론트엔드 > 정보 용어' 카테고리의 다른 글
[프론트엔드 용어] 프로토콜, IP주소, 도메인네임 무슨 소리죠? (0) | 2020.08.19 |
---|---|
[어린이도 이해하는 소프트웨어 용어정리] 자바스크립트 매개변수란? (parameter) (0) | 2020.06.26 |
[Front-End-Develope] 프론트앤드 개발자가 알아야 할 필요한 기술들 (0) | 2020.01.04 |
[Visual Studio] 비쥬얼 스튜디오 단축키 정리 및 모음 (0) | 2020.01.03 |
[모바일 UI] 모바일 앱 UX-UI 굿 디자인 팁 Tip 정보 (0) | 2019.12.27 |