본문 바로가기

개발일지

다시 돌아보는 Promise

날짜 : 2018. 05. 19(토)


다시 돌아보는 Promise

한줄정리

Promise로 함수를 만들기 위해서는 비동기 처리가 완료되었다는 것을 알수있는 무언가(예를 들어 이벤트 처리)가 필요하다. Promise를 사용하기 전에 내가 만든 로직이 잘 만들어 졌는지 고민해 보자.

내용

  1. 처리해야 되는 이슈.
  • endpoint(DB)에 UPDATE전 칼럼이 없으면 CREATE를 생성하고 나서, UPDATE를 진행 하도록 설계
  • 비동기 처리로 인하여 CREATE가 다 종료되지 않았는데 UPDATE가 종료되는 상황
  1. 오늘 알게된 사실.
  2. 비동기 처리를 위한 Promise
-  Promise를 사용하면 then키워드를 이용하여 비동기를 순차적으로 처리할 수 있다고 알고 있다. 
-  Promise 생성자를 이용하여 함수를 만들때, 비동기가 끝이나는 것을 인지할 수 있는 무엇인가가 필요하다. 
- 예를 들어 XMLHttpRequest 객체에서 onload 이벤트를 사용하여 통신이 완료된 것을 확인
  1. 로직상의 문제
- 현재 설계한 로직에서 유연성을 위해서 endpoint에 CREATE를 하고서 UPDATE 하는 과정을 별도로 만들었었다. 
- 이렇게 만들지 않고, if로 분기처리를 하여 CREATE를 할때에는 UPDATE를 하지 않도록 하는 로직을 만들면 된다. 
  1. 참고한 사이트