2021.05.10 데일리 회고

천영석·2021년 5월 10일
1

Facts

  • 장바구니 페이지 기능 구현을 완료했다.(5시간)
  • PropTypes를 적용했다.(1시간)

Feelings & Findings

장바구니 페이지 기능 구현을 완료했다.

장바구니 미션이라서 장바구니 기능이 많았다. 지금까지 컴포넌트를 구현했고, 초조했었는데 생각보다 기능은 어렵지 않았다. redux를 사용하면서 상태를 전역으로 관리해서 더 쉬웠다. action이 너무 많아지고, 불변성을 유지하기 위해 reducer에서 분기가 많이 발생해서 파일이 점점 커지는 것이 문제라고 생각하지만 아직은 괜찮은 것 같다.

아직 redux-thunk를 도입하지는 않았는데, 필요성을 느끼지 못해서 도입하지 않았다. 하지만 비동기인 경우에 redux-devtools에서 이전 상태와 변경된 상태를 추적할 수 없다는 것을 알게 되었다. 그래서 redux-thunk를 사용하면 비동기 코드도 dispatch를 할 수 있기 때문에 추적이 가능해진다. 그래서 내일에 redux-thunk를 도입하려고 한다.

redux-thunk에 대해 살짝 공부했는데, 미들웨어로써 dispatch를 하면 action을 바로 실행시키는 것이 아닌 action을 미들웨어에 전달한다. 그 뒤 action이 function이 아니면 바로 실행시켜서 reducer에 전달하고, function이라면 action에서 dispatch나 getState, extraArgument를 할 수 있게 해준다. 그래서 비동기 처리가 가능해진다. 비동기 처리를 할 때 원하는 곳에서 dispatch만 해주면 된다. dan abramov는 정말 대단한 사람이라는 것을 느끼는 순간이었다.

아직까지는 어려운 부분이 없지만 재사용성에 대한 고민은 계속 하고 있다. 컴포넌트의 재사용성에 대한 고민은 끝이 없는 것 같다.

PropTypes를 적용했다.

PropTypes와 defaultProps를 적용했는데, 지금까지 하던 것이라서 어려운 것은 없었다. 오늘은 목표를 모두 달성해서 살짝 여유가 생겨서 잊고 있었던 PropTypes를 적용할 수 있었다.

profile
느려도 꾸준히 발전하려고 노력하는 사람입니다.

0개의 댓글