비동기를 동기적으로 해 줍니다. (??????????)
...... 원래 현실은 멋 없는 거라고 생각한다.
혼자 하는거라 하 막 예쁘게 하기 힘들다.
동기, 비동기란? (+Promise, async/await 개념)
1. 동기 vs. 비동기 우선 차이점 부터 설명하자면, 동기는 '직렬적'으로 작동하는 방식이고 비동기는 '병렬적'으로 작동하는 방식이다. 즉, 비동기란 특정 코드가 끝날때 까지 코드의 실행을 멈추
velog.io
아이패드가 있기는 한데,
다른 툴 써서 예쁘게 만들어도 되는데
종이에 펜으로 쓰는게 제일 빠르고 뭔가 좋아서
지금은... 일단은 ㅠㅠㅠ 종이에.. 표현 중
도저히 무슨 말인지 모르겠어서
손으로 뭔가 적어보면서 정리해보았다
동기적인 작업 = 직렬
비동기 = 병렬
동기적으로 하면 데이터가 서버에서 네트워크 통신 하면서
시간이 걸릴 수 있는데
비동기적 작업을 하게 되면
전기 밥솥에 취사 눌러놓고
김치찌개 동시에 끓이고 있을 수 있는 것이다.
대충 그런거는 알겠는데
갑자기 비동기적 작업을 동기적으로 처리해줍니다.
이런 말을 해서 도대체 무슨 말인가 이해가 안됐다.
그냥 비동기적 작업이 되어지는데,
동기적 작업 순서로 인식 될 수 있게끔
'밥 지으면서 김치찌개 끓이기' 를
그래도 완성은 밥부터 되게끔 한다는 것이다.
그렇게 하면 순차적으로 표현이 되어지기 때문에
코드를 이해하기 쉬워진다.
또 데이터의 확실성을 위해서도 그렇게 한다.
비동기 작업이 완료 된 후에야 얻을 수 있는 데이터가 있다면
해당 작업이 완료될 때 까지 기다려야 한다는 것이다.
마지막으로 에러 핸들링도 동기적으로 잡아낼 수 있다.
즉, try/catch 문 작성 가능
결론
어쨌든 게시판 API 를 구성할 때
데이터를 받아오기 전에 다음 작업 진행을 해버리거나,
그냥 동기적으로만 작업해서 통신이 지연이 발생하면 시간이 오래걸리기 때문에
async/await 을 사용해서 비동기 작업을 동기적으로 처리한다.