[TIL] 원티드 프리온보딩 백엔드 인턴십 Week2) 9일차, 0828
✔️ 오늘 한 일
- 디렉토리 구조 설정 및 프로젝트 생성
- GitHub Label, PR 템플릿 생성
- Jira - GitHub 연동 및 이슈 템플릿 생성
- yml 설정 (DB 등)
- 서울시 공공데이터를 이용한 맛집 데이터 수집 기능 구현
👀 오늘의 이슈
- 위도, 경도의 데이터 타입 (Double vs Decimal)
- 배경 : 위도와 경도의 데이터 타입을 Double, Decimal 타입 중 어떤 타입으로 사용할지 고민함
- 분석
Double
타입
- 용도: 일반적인 부동소수점 계산에 사용
- 범위: 매우 넓은 범위를 다룰 수 있지만, 소수점 이하 자리수가 15-17자리 정도로 제한
- 정확도: 부동소수점 연산이므로, 소수점 이하의 아주 작은 값에서는 정확도가 떨어질 수 있음
- 성능: 계산이 빠르고 메모리 사용량이 적음. 대부분의 GPS 데이터, 지도 API, 지리적 계산에서
Double
을 사용
Decimal
타입
- 용도: 고정 소수점 계산에 사용되며, 주로 금융 계산 등에서 사용
- 범위: 범위는 상대적으로 좁지만, 더 많은 소수점 자릿수의 정확한 표현 가능 (28-29자리).
- 정확도: 높은 정밀도를 제공하며, 부동소수점 오류가 없음
- 성능:
Double
보다 연산 속도가 느리고, 메모리 사용량이 많음
- 결론 : Decimal 타입은 Double보다 연산 속도가 느리고 메모리 사용량이 많으며,
대부분의 GPS 데이터, 지도 API, 지리적 계산에서 Double을 사용하기 때문에, Double 타입으로 충분히 요구사항을 충족할 수 있다고 판단하여 Double 타입으로 결정했다.
💡 Today I Learned
- Git 저장소에 .gitkeep을 활용해서 빈 디렉토리를 쉽게 추가할 수 있다.
- 기존에는 초기 프로젝트 세팅 후 빈 .txt 파일 혹은 Class 파일을 생성해서 GitHub에 Push하곤 했었는데,
.gitkeep 파일로 Dummy 파일을 생성할 수 있다는 것을 알게 되었다.