[sprint3] 통계기능

김_리트리버·2020년 8월 2일
0
post-thumbnail

[ 통계 ]

기본적인 설정이 끝나 팀원과 개발할 서로 겹치지 않고록 화면을 나누어 통계화면을 개발하였다. 먼저 사용자가 입력하는 data 로는 category, type, 계절, 가격, 구매날짜, 브랜드, 저장장소 등이 있었다. 의류관리를 한다는 기획의도에 맞게 각 분류별 의류의 수량, 가격을 그래프로 나타내고자 하였다. 먼저 어떤 그래프를 사용할 건지를 조사하였다. 이후 구매날짜에 따른 의류구매가격 변화는 꺾은선 그래프, 분류에 따른 의류의 갯수, 가격, 비율 등은 막대그래프, pie 그래프를 사용하는 것으로 결정하였다. chart 라이브러리는 공식문서가 잘 정리되어 있는 victory-native 를 사용하였다.

단순 라이브러리를 사용하는 것은 공식문서를 보고 할 수 있었지만 문제는 그래프에 표현해야 할 통계data 를 클라이언트에서 뽑아내어야 했다. 뽑아내야 하는 data 가 많아 data 와 data 를 뽑아내는 함수를 한 파일로 관리하여 각 그래프 component 에서 import 하여 사용할 수 있도록 구성하였다. 결과적으로 코드의 중복을 방지할 수 있었다.

[Redux-thunk]

서버가 어느정도 마무리가 되어 기존에 작성한 코드를 redux-thunk 를 사용하여 서버와 연결하고자 하였다. 지난 프로젝트에서 클라이언트와 서버간 데이터 전달과정 중 동기처리가 되지 않아 발생하는 문제가 많았다. 이를 방지하기 위해 Redux ActionCreator 에서 async, await 으로 data를 받은 후 reducer 로 dispatch 하도록 설정하였다. 이후 예외적인 오류가 발생하지 않는지 확인하는 과정에서 서버에서 관리하는 data 양식과 클라이언트에서 관리하는 양식에 다소 차이가 있음을 발견하였다. 해결을 위해 서버쪽을 맡은 팀원과 소통하여 보낼 때는 서버쪽 양식으로 변경하여 보내고 data 를 받은 다음에는 양식을 변경하여 관리하였다.

profile
web-developer

0개의 댓글