본문 바로가기
TIL/2024 원티드 프리온보딩 백엔드 인턴십

[TIL] 원티드 프리온보딩 백엔드 인턴십 Week2) 9일차, 0828

by ryuneng 2025. 1. 22.
반응형

✔️ 오늘 한 일

  • 디렉토리 구조 설정 및 프로젝트 생성
  • 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 파일을 생성할 수 있다는 것을 알게 되었다.

 


< 해당 글은 velog에서 이전하며 옮겨온 글로, 가독성이 좋지 않을 수 있는 점 양해 부탁드립니다. >

🔗 velog 버전 보기 : https://velog.io/@ryuneng2/TIL-원티드-프리온보딩-백엔드-인턴십-Week2-9일차-0828