capstone-team-6 / capstone-design

1 stars 1 forks source link

map view draft pull request #14

Closed min-jp closed 6 months ago

min-jp commented 6 months ago

진행상황

서버

맵 기능에 필요한 기본적인 서버 개발 완료되었습니다.

클라이언트

클라이언트 파트는 개발중에 있습니다. 클라이언트 코드는 미완성이기에 코드 리뷰에서 제외하셔도 될 것 같습니다. 클라이언트 파트도 완성되는 대로 풀 리퀘 올리도록 하겠습니다.

의견

서버에 대한 코드 리뷰 부탁드립니다.

인터페이스 부분에서 3가지 의견이 있습니다.

  1. DTO: 기존 타입들을 이용한 새 타입 정의할 때의 가독성
  2. 엔드포인트: 리스폰스의 형태
  3. 엔티티: 유니크 설정

자세한 코멘트는 각 코드에 직접 의견 달아놓겠습니다. 확인 부탁드립니다.

min-jp commented 6 months ago

서버

코드 리뷰 후 수정사항

타입 분리

Floor 타입을 분리하여 코드를 간결하게 수정.

DTO 수정

등록을 할 때 id를 모두 제거. id는 UUID로 자동 생성.

인덱스 설정

몽고 DB에서 특정 필드가 객체 안에서만 유니크 하도록 인덱스 설정 불가. 따라서 id값을 UUID로 생성하여 유니크함을 보장하도록 수정.

마커 등록시 리스폰스 타입

모든 경우에 리스폰스를 Building으로 통일. 마커를 등록할 때에는 등록 여부만 리턴하려 했으나, id 정보가 필요해서 어렵다고 판단.

id와 DTO를 합쳐서 기존 빌딩 정보에 올바른 위치에 넣는 과정이 번거롭다고 판단. 마커 등록과 같은 과정은 관리자가 임의로 하게 되므로 빈도수가 작을 것으로 예상. 빌딩 전체를 리턴하더라도 큰 문제가 없다고 판단함.

기타

잘못된 변수명 수정.

향후 개발 사항

Map 파트 API

min-jp commented 6 months ago

진행상황

클라이언트

이미지 맵, 마커 기능

큐알 스캔 기능

테스트 페이지

의견

마커를 추가하면 마커의 이름을 입력하는 부분도 필요할까요? 우클릭 후 마커의 이름을 입력하는 창이 나오고, 입력을 완료할 시 마커 등록 api를 호출하는 방식을 생각했습니다. 위 구현을 할 시 이름 입력을 완료하는 이벤트가 나타날 때 까지 함수 내에서 대기를 해야한다면 await를 사용하는게 맞나요?

코드에 대해 이해가 어렵거나 보완할 부분이 있다면 알려주시면 감사하겠습니다.

UNWHO commented 6 months ago

마커를 추가하면 마커의 이름을 입력하는 부분도 필요할까요? 우클릭 후 마커의 이름을 입력하는 창이 나오고, 입력을 완료할 시 마커 등록 api를 호출하는 방식을 생각했습니다. 위 구현을 할 시 이름 입력을 완료하는 이벤트가 나타날 때 까지 함수 내에서 대기를 해야한다면 await를 사용하는게 맞나요?

함수를 block 시킬 필요 없이, 이름 입력을 마칠 때 마커 등록 api를 호출하는 것이 맞는 흐름이라고 생각합니다.