Skip to content

πŸ˜Žκ°•μœ€ν˜œ|πŸ˜„μ΄μΈμž¬|πŸ˜‘μ–‘μŠΉμž¬|πŸ§μ •μž¬μš°|πŸ₯Άμ΄ν•˜κ²½

Notifications You must be signed in to change notification settings

beyond-sw-camp/be21-3st-team5-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ν”„λ‘œμ νŠΈ README

1. νŒ€μ†Œκ°œ

κ·„μΉ΄

image
κ°•μœ€ν˜œ
image
μ–‘μŠΉμž¬
image
이인재
image
μ΄ν•˜κ²½
image
μ •μž¬μš°

2. 기술 μŠ€νƒ

Backend

Frontend

Tool & Collaboration


3. ν”„λ‘œμ νŠΈ κ°œμš”

λ³Έ ν”„λ‘œμ νŠΈλŠ” 날씨 정보λ₯Ό 기반으둜 ν•œ μ„œλΉ„μŠ€ 제곡 ν”Œλž«νΌμœΌλ‘œ,
μ‚¬μš©μžλŠ” νšŒμ›κ°€μž… 및 λ‘œκ·ΈμΈμ„ 톡해 κ°œμΈν™”λœ κΈ°λŠ₯을 μ΄μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

ν”„λ‘œμ νŠΈλŠ” νŒ€ λ‹¨μœ„ ν˜‘μ—…μ„ μ „μ œλ‘œ ν•˜μ—¬
인증/λ³΄μ•ˆ, μ™ΈλΆ€ API ν™œμš©, ν”„λ‘ νŠΈμ—”λ“œ UI κ΅¬ν˜„μ„ μ€‘μ‹¬μœΌλ‘œ κ°œλ°œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.


4. 개발 배경

μΌμƒμ—μ„œ 날씨 μ •λ³΄λŠ” 자주 ν™œμš©λ˜μ§€λ§Œ,
λ‹¨μˆœ 정보 μ œκ³΅μ— κ·ΈμΉ˜λŠ” κ²½μš°κ°€ λ§Žλ‹€λŠ” μ μ—μ„œ μΆœλ°œν•˜μ˜€μŠ΅λ‹ˆλ‹€.

λ³Έ ν”„λ‘œμ νŠΈλŠ” λ‹€μŒμ„ λͺ©ν‘œλ‘œ κΈ°νšλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

  • 계정 기반 μ„œλΉ„μŠ€ ꡬ쑰 κ²½ν—˜
  • μ™ΈλΆ€ API 연동을 ν†΅ν•œ μ‹€μ‹œκ°„ 데이터 ν™œμš©
  • ν”„λ‘ νŠΈμ—”λ“œμ™€ λ°±μ—”λ“œ ν˜‘μ—… κ²½ν—˜ 좕적

5. μ£Όμš” 제곡 κ°€μΉ˜

  • μ‚¬μš©μž 인증을 ν†΅ν•œ κ°œμΈν™” μ„œλΉ„μŠ€ 제곡
  • 날씨 데이터λ₯Ό ν™œμš©ν•œ μ‹€μš©μ μΈ 정보 제곡
  • μ—­ν•  λΆ„λ‹΄ 기반의 νŒ€ ν”„λ‘œμ νŠΈ κ²½ν—˜
  • 인증 및 λ³΄μ•ˆ ꡬ쑰에 λŒ€ν•œ μ‹€μŠ΅ κ²½ν—˜

6. μ‹œμž₯ 쑰사

κΈ°μ‘΄ 날씨 μ„œλΉ„μŠ€λ“€μ€ λ‹€μŒκ³Ό 같은 νŠΉμ§•μ„ κ°€μ§€κ³  μžˆμŠ΅λ‹ˆλ‹€.

  • 정보 μ€‘μ‹¬μ˜ λ‹¨μˆœ UI
  • μ‚¬μš©μž μ°Έμ—¬ μš”μ†Œ λΆ€μ‘±
  • κ°œμΈν™” κΈ°λŠ₯의 μ œν•œ

λ³Έ ν”„λ‘œμ νŠΈλŠ” μ΄λŸ¬ν•œ κΈ°μ‘΄ μ„œλΉ„μŠ€λ“€μ„ μ°Έκ³ ν•˜μ—¬
계정 기반 ꡬ쑰와 ν™•μž₯ κ°€λŠ₯ν•œ κΈ°λŠ₯ 섀계λ₯Ό μ§€ν–₯ν•˜μ˜€μŠ΅λ‹ˆλ‹€.


7. μœ μ‚¬ ν”„λ‘œκ·Έλž¨

  • 넀이버 날씨
  • 기상청 λ‚ μ”¨λˆ„λ¦¬
  • AccuWeather

μœ μ‚¬ μ„œλΉ„μŠ€λ“€μ˜ 정보 제곡 방식을 μ°Έκ³ ν•˜λ˜,
λ³Έ ν”„λ‘œμ νŠΈλŠ” ν•™μŠ΅ λͺ©μ μ˜ κ΅¬ν˜„κ³Ό μ„œλΉ„μŠ€ ꡬ쑰 이해에 쀑점을 λ‘μ—ˆμŠ΅λ‹ˆλ‹€.


8. μ£Όμš” κΈ°λŠ₯

8.1 계정 및 인증

  • νšŒμ›κ°€μž… 및 둜그인 κΈ°λŠ₯
  • λΉ„λ°€λ²ˆν˜Έ ν•΄μ‹± ν›„ μ €μž₯
  • 이메일 인증 기반 λΉ„λ°€λ²ˆν˜Έ μž¬μ„€μ •
  • JWT 기반 인증 (Access / Refresh Token)

8.2 날씨 정보 κΈ°λŠ₯

  • μ™ΈλΆ€ APIλ₯Ό ν†΅ν•œ 날씨 데이터 쑰회
  • μ§€μ—­ 기반 날씨 정보 제곡

8.3 ν”„λ‘ νŠΈμ—”λ“œ UI

  • Vue 기반 SPA ꡬ쑰
  • 인증 μƒνƒœμ— λ”°λ₯Έ ν™”λ©΄ λΆ„κΈ°
  • μ‚¬μš©μž μΉœν™”μ μΈ UI ꡬ성

8.4 OOTD

  • λ°μ΄ν„°λ² μ΄μŠ€μ™€ μ—°κ²°ν•΄μ„œ 데이터 쑰회
  • 데이터 상세 쑰회
  • λΉ„μŠ·ν•œ 날씨에 OOTD μΆ”μ²œ
  • 였늘의 날씨에 OOTD 등둝

9. κΈ°λŒ€ 효과

  • μ‚¬μš©μž 인증 흐름에 λŒ€ν•œ 이해도 ν–₯상
  • ν”„λ‘ νŠΈμ—”λ“œΒ·λ°±μ—”λ“œ 뢄리 ꡬ쑰 κ²½ν—˜
  • νŒ€ ν˜‘μ—… κ³Όμ •μ—μ„œμ˜ μ—­ν•  λΆ„λ‹΄ 및 μ†Œν†΅ λŠ₯λ ₯ ν–₯상
  • 싀무와 μœ μ‚¬ν•œ ν”„λ‘œμ νŠΈ μ§„ν–‰ κ²½ν—˜ 좕적

10. μŠ€ν† λ¦¬λ³΄λ“œ (Figma)

  • Figmaλ₯Ό ν™œμš©ν•˜μ—¬ ν™”λ©΄ 흐름 및 UIλ₯Ό μ„€κ³„ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • 둜그인, 메인 ν™”λ©΄, μ£Όμš” κΈ°λŠ₯ νŽ˜μ΄μ§€ 흐름을 μ€‘μ‹¬μœΌλ‘œ κ΅¬μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
image

11. μš”κ΅¬μ‚¬ν•­ λͺ…μ„Έμ„œ

  • μ‚¬μš©μž νšŒμ›κ°€μž… 및 둜그인 κΈ°λŠ₯ 제곡
  • 인증된 μ‚¬μš©μžλ§Œ μ£Όμš” κΈ°λŠ₯ μ ‘κ·Ό κ°€λŠ₯
  • 날씨 정보 쑰회 κΈ°λŠ₯ 제곡
  • ν”„λ‘ νŠΈμ—”λ“œμ™€ λ°±μ—”λ“œ κ°„ API 연동
  • 곡톡 응닡 포맷을 ν†΅ν•œ μΌκ΄€λœ 데이터 처리

μš”κ΅¬μ‚¬ν•­ λͺ…μ„Έμ„œ


12. ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€

  • νšŒμ›κ°€μž… 정상 / 비정상 μž…λ ₯ ν…ŒμŠ€νŠΈ
  • 둜그인 성곡 / μ‹€νŒ¨ ν…ŒμŠ€νŠΈ
  • λΉ„λ°€λ²ˆν˜Έ μž¬μ„€μ • 흐름 ν…ŒμŠ€νŠΈ
  • 인증 토큰 만료 μ‹œ μž¬λ°œκΈ‰ ν…ŒμŠ€νŠΈ
  • 날씨 API 정상 응닡 μ—¬λΆ€ ν…ŒμŠ€νŠΈ
image

13. νŒ€μ› 회고

κ°•μœ€ν˜œ

였늘의 날씨 νŽ˜μ΄μ§€λ₯Ό λ§‘μ•„ ν”„λ‘œμ νŠΈλ₯Ό μ§„ν–‰ν–ˆμŠ΅λ‹ˆλ‹€. μ‚¬μš©μžμ˜ 긍정적인 κ²½ν—˜μ„ μœ„ν•΄ ν˜„μž¬ 날씨 β†’ 날씨에 λ§žλŠ” 옷차림 β†’ μ‹œκ°„λŒ€λ³„ 기온 β†’ λ‹€μŒ νŽ˜μ΄μ§€λ‘œ μ΄λ™ν•˜λŠ” 프리뷰가 μžμ—°μŠ€λŸ½κ²Œ 이어지도둝 ν™”λ©΄ 흐름을 κ΅¬μ„±ν–ˆμŠ΅λ‹ˆλ‹€. μ›Ήμ˜ 핡심 λͺ©μ μ΄ β€˜κΈ°μ˜¨μ— λ§žλŠ” 옷차림 μΆ”μ²œβ€™μΈ 만큼 옷 μΆ”μ²œμ„ μ€‘μ‹¬μœΌλ‘œ λ‘λ˜, 날씨 μ„œλΉ„μŠ€λ‘œμ„œ ν•„μš”ν•œ 정보도 μΆ©λΆ„νžˆ 전달할 수 μžˆλ„λ‘ κ· ν˜•μ„ λ§žμ·„μŠ΅λ‹ˆλ‹€. λ˜ν•œ 였늘 κΈ°λ‘ν•˜κΈ° λ²„νŠΌκ³Ό 프리뷰 μΉ΄λ“œλ₯Ό 톡해 κ΄€λ ¨ νŽ˜μ΄μ§€λ‘œ λ°”λ‘œ 이동할 수 있게 ν•˜μ—¬ 탐색 νŽΈμ˜μ„±μ„ λ†’μ˜€μŠ΅λ‹ˆλ‹€. μ–΄λ €μ› λ˜ 점은 Vue와 기상청 API λͺ¨λ‘ μ΅μˆ™ν•˜μ§€ μ•Šμ•„, 응닡 데이터λ₯Ό 화면에 맞게 κ°€κ³΅ν•˜κ³  μƒνƒœλ₯Ό κ΄€λ¦¬ν•˜λŠ” κ³Όμ •μ—μ„œ 어렀움을 κ²ͺμ—ˆμŠ΅λ‹ˆλ‹€. 특히 기상청 APIλŠ” μš”μ²­ μ‹€νŒ¨λ‚˜ 응닡 λˆ„λ½μ΄ λ°œμƒν•˜λŠ” κ²½μš°κ°€ μžˆμ–΄ 디버깅이 μ–΄λ €μ› μŠ΅λ‹ˆλ‹€. 이λ₯Ό λ³΄μ™„ν•˜κΈ° μœ„ν•΄ λ‘œλ”©/μ—λŸ¬/데이터 μˆ˜μ‹  μƒνƒœ λ©”μ‹œμ§€λ₯Ό 화면에 ν‘œμ‹œν•˜μ—¬ 개발자뿐 μ•„λ‹ˆλΌ μ‚¬μš©μžλ„ ν˜„μž¬ μƒνƒœλ₯Ό 확인할 수 μžˆλ„λ‘ κ°œμ„ ν–ˆμŠ΅λ‹ˆλ‹€. μ•„μ‰¬μš΄ 점은 일뢀 데이터 가곡 둜직이 ν”„λ‘ νŠΈμ— μ§‘μ€‘λ˜μ–΄ μžˆμ–΄, API 응닡 ꡬ쑰가 λ°”λ€Œλ©΄ ν”„λ‘ νŠΈ μˆ˜μ • λ²”μœ„κ°€ 컀질 수 μžˆλ‹€λŠ” μ μž…λ‹ˆλ‹€. λ‹€μŒμ—λŠ” λ°±μ—”λ“œμ—μ„œ 데이터λ₯Ό λͺ©μ μ— 맞게 가곡해 λ‚΄λ €μ£Όκ³ , ν”„λ‘ νŠΈλŠ” ν‘œμ‹œ μ€‘μ‹¬μœΌλ‘œ λ‹¨μˆœν™”ν•˜μ—¬ 변경에 κ°•ν•œ ꡬ쑰둜 κ°œμ„ ν•΄λ³΄κ³  μ‹ΆμŠ΅λ‹ˆλ‹€.


μ–‘μŠΉμž¬

이번 ν”„λ‘œμ νŠΈλ₯Ό 톡해 APIλ₯Ό ν™œμš©ν•˜μ—¬ ν”„λ‘ νŠΈμ—”λ“œμ—μ„œ 데이터λ₯Ό μ²˜λ¦¬ν•˜κ³ , 이λ₯Ό λ°±μ—”λ“œ 및 λ°μ΄ν„°λ² μ΄μŠ€μ™€ μ—°λ™ν•˜λŠ” μ „λ°˜μ μΈ 흐름을 직접 κ²½ν—˜ν•˜λ©° λ§Žμ€ 것을 배울 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. μ²˜μŒμ—λŠ” ν”„λ‘ νŠΈμ—”λ“œμ™€ λ°±μ—”λ“œλ₯Ό μ—°κ²°ν•˜λŠ” μž‘μ—…μ΄ 비ꡐ적 λ‹¨μˆœν•  것이라고 μƒκ°ν–ˆμ§€λ§Œ, μ‹€μ œλ‘œ κ΅¬ν˜„ν•΄ λ³΄λ‹ˆ μš”μ²­κ³Ό 응닡 ꡬ쑰λ₯Ό μ •ν™•νžˆ μ΄ν•΄ν•˜κ³  각 계측 κ°„μ˜ 역할을 λͺ…ν™•νžˆ κ΅¬λΆ„ν•˜λŠ” 것이 생각보닀 λ³΅μž‘ν•˜κ³  μ–΄λ €μš΄ μž‘μ—…μ΄λΌλŠ” 것을 λŠκΌˆμŠ΅λ‹ˆλ‹€. 특히 ν”„λ‘ νŠΈμ—”λ“œμ—μ„œ μž…λ ₯ν•œ 데이터λ₯Ό λ°±μ—”λ“œμ˜ μš”μ²­ 객체둜 μ „λ‹¬ν•˜λŠ” κ³Όμ •μ—μ„œ 데이터 ν˜•μ‹, νƒ€μž…, 넀이밍 κ·œμΉ™ 등을 λ§žμΆ”λŠ” 뢀뢄이 쉽지 μ•Šμ•˜κ³ , ν•˜λ‚˜μ˜ κΈ°λŠ₯이 μ •μƒμ μœΌλ‘œ λ™μž‘ν•˜κΈ° μœ„ν•΄ ν”„λ‘ νŠΈμ—”λ“œ, λ°±μ—”λ“œ, λ°μ΄ν„°λ² μ΄μŠ€κ°€ λͺ¨λ‘ μ •ν™•ν•˜κ²Œ μ—°κ²°λ˜μ–΄μ•Ό ν•œλ‹€λŠ” μ μ—μ„œ λ§Žμ€ μ‹œν–‰μ°©μ˜€λ₯Ό κ²ͺμ—ˆμŠ΅λ‹ˆλ‹€. 이 κ³Όμ •μ—μ„œ API λͺ…μ„Έμ˜ μ€‘μš”μ„±κ³Ό μš”μ²­Β·μ‘λ‹΅ 흐름을 μ²΄κ³„μ μœΌλ‘œ μ„€κ³„ν•˜λŠ” 것이 μ–Όλ§ˆλ‚˜ μ€‘μš”ν•œμ§€ 체감할 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ νŽ˜μ΄μ§€λ₯Ό ν•˜λ‚˜μ”© κ΅¬ν˜„ν•΄ λ‚˜κ°€λ©° 각 ν™”λ©΄λ§ˆλ‹€ μ„œλ‘œ λ‹€λ₯Έ κΈ°λŠ₯κ³Ό 데이터λ₯Ό μ—°κ²°ν•˜λŠ” κ³Όμ •μ—μ„œ, λ‹¨μˆœνžˆ κΈ°λŠ₯을 λ§Œλ“œλŠ” 것이 μ•„λ‹ˆλΌ 전체 ν”„λ‘œμ νŠΈ ꡬ쑰λ₯Ό μ΄ν•΄ν•˜κ³  흐름을 κ³ λ €ν•˜λŠ” μ‹œκ°μ΄ ν•„μš”ν•˜λ‹€λŠ” 것을 μ•Œκ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. κΈ°λŠ₯이 μΆ”κ°€λ μˆ˜λ‘ μ½”λ“œμ˜ ꡬ쑰와 μ±…μž„ 뢄리가 μ€‘μš”ν•΄μ‘Œκ³ , μž‘μ€ μˆ˜μ •μ΄ λ‹€λ₯Έ 뢀뢄에 영ν–₯을 쀄 수 μžˆλ‹€λŠ” μ μ—μ„œ μ‹ μ€‘ν•œ 개발의 ν•„μš”μ„±μ„ λŠκΌˆμŠ΅λ‹ˆλ‹€. 이번 ν”„λ‘œμ νŠΈλ₯Ό 톡해 ν”„λ‘ νŠΈμ—”λ“œμ™€ λ°±μ—”λ“œκ°€ μ–΄λ–»κ²Œ 유기적으둜 λ™μž‘ν•˜λŠ”μ§€μ— λŒ€ν•œ 이해도가 크게 ν–₯μƒλ˜μ—ˆμœΌλ©°, λ‹¨μˆœν•œ κ΅¬ν˜„μ„ λ„˜μ–΄ μ‹€μ œ μ„œλΉ„μŠ€μ— κ°€κΉŒμš΄ 개발 κ²½ν—˜μ„ ν•  수 μžˆμ—ˆλ‹€λŠ” μ μ—μ„œ 맀우 의미 μžˆλŠ” μ‹œκ°„μ΄μ—ˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ κ²½ν—˜μ„ λ°”νƒ•μœΌλ‘œ, μ•žμœΌλ‘œλŠ” 더 μ•ˆμ •μ μ΄κ³  ν™•μž₯성을 κ³ λ €ν•œ κ°œλ°œμ„ ν•  수 μžˆμ„ κ²ƒμ΄λΌλŠ” μžμ‹ κ°μ„ 얻을 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.


이인재

날씨 일기예보 μ„œλΉ„μŠ€μ˜ 이번주 날씨 νŽ˜μ΄μ§€λ₯Ό λ§Œλ“€λ©΄μ„œ 날씨 일기예보 μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν•˜κΈ° μœ„ν•΄μ„œλŠ” λˆˆμ— λ³΄μ΄λŠ” ν”„λ‘ νŠΈ ν™”λ©΄ 뿐만 μ•„λ‹ˆλΌ μ‹€μ œ κΈ°μƒμ²­μ˜ API 데이터λ₯Ό 가져와 μ„ΈνŒ…ν•˜λŠ” λ°±μ—”λ“œ μž‘μ—…μ΄ μ€‘μš”ν•˜λ‹€λŠ” 것을 μ•Œκ²Œ λμŠ΅λ‹ˆλ‹€. ν˜‘μ—… 툴인 λ¦¬λ‹ˆμ–΄, IDE인 μ•ˆν‹°κ·Έλž˜λΉ„ν‹°, VS Codeλ₯Ό μ ‘ν•˜κ²Œ λ˜μ–΄ μœ μ΅ν–ˆμœΌλ©° ν˜‘μ—… 쀑 λ°œμƒν•˜λŠ” Git μΆ©λŒμ„ ν•΄κ²°ν•˜κΈ° μœ„ν•΄ μ—°μŠ΅μ΄ ν•„μš”ν•˜λ‹€λŠ” 것을 λŠκΌˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ 기상청 λ‹¨κΈ°μ˜ˆλ³΄λŠ” 3일치의 기상 정보λ₯Ό μ œκ³΅ν•˜κΈ° λ•Œλ¬Έμ— μ£Όκ°„ 날씨 μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν•˜κΈ° μœ„ν•΄μ„œλŠ” κΈ°μƒμ²­μ˜ μ€‘κΈ°μ˜ˆλ³΄ APIλ₯Ό μ—°λ™ν•˜λŠ” μž‘μ—…μ΄ ν•„μš”ν•˜λ‹€λŠ” 것을 λŠκΌˆμŠ΅λ‹ˆλ‹€. ν”„λ‘œμ νŠΈλ₯Ό μ΄λŒμ–΄ μ£Όμ‹  재우 νŒ€μž₯λ‹˜, ν•˜κ²½λ‹˜, μŠΉμž¬λ‹˜, μœ€ν˜œλ‹˜κ»˜ κ°μ‚¬ν•©λ‹ˆλ‹€.


μ΄ν•˜κ²½

이번 κΈ°μƒμ˜ˆλ³΄ μ›Ή μ„œλΉ„μŠ€ ν”„λ‘œμ νŠΈλ₯Ό μ§„ν–‰ν•˜λ©΄μ„œ ν”„λ‘ νŠΈμ—”λ“œμ™€ λ°±μ—”λ“œκ°€ μ–΄λ–»κ²Œ μ—°κ²°λ˜μ–΄ ν•˜λ‚˜μ˜ μ„œλΉ„μŠ€λ‘œ λ™μž‘ν•˜λŠ”μ§€ 전체적인 흐름을 직접 κ²½ν—˜ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. Vue둜 μž‘μ—…ν•΄λ³Έ 건 μ²˜μŒμ΄μ—ˆλŠ”λ°, μ»΄ν¬λ„ŒνŠΈ 기반 ꡬ쑰 덕뢄에 ν”„λ‘ νŠΈμ—”λ“œμ˜ κΈ°λ³Έ 원리λ₯Ό μ’€ 더 μ‰½κ²Œ 읡힐 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. μ œκ°€ λ§‘μ•˜λ˜ 지도 νŽ˜μ΄μ§€μ—μ„œλŠ” 정적인 지도 이미지 μœ„μ— μ§€μ—­λ³„λ‘œ 날씨 정보λ₯Ό 비동기 λ°©μ‹μœΌλ‘œ ν‘œμ‹œν–ˆμŠ΅λ‹ˆλ‹€. 이 κ³Όμ •μ—μ„œ 비동기 λ‘œλ”©μ΄λ‚˜ κ°„λ‹¨ν•œ 캐싱 κ°œλ…λ„ μžμ—°μŠ€λŸ½κ²Œ 배울 수 μžˆμ—ˆκ³ , λΈŒλΌμš°μ € 개발자 도ꡬλ₯Ό ν™œμš©ν•΄ λ„€νŠΈμ›Œν¬ μš”μ²­μ΄λ‚˜ ν™”λ©΄ λ Œλ”λ§ 과정을 직접 ν™•μΈν•˜λ©΄μ„œ ν”„λ‘ νŠΈμ—”λ“œ 디버깅에 λŒ€ν•œ 감도 μ΅ν˜”μŠ΅λ‹ˆλ‹€. UIλ‚˜ λ§ˆμŠ€μ½”νŠΈ λ””μžμΈμ„ ν•  땐 μƒμ„±ν˜• AI의 도움을 λ°›μ•˜λŠ”λ°, ꡬ쑰와 λͺ©μ μ„ λͺ…ν™•νžˆ ν•œ μƒνƒœμ—μ„œ AIλ₯Ό ν™œμš©ν•΄ μž‘μ—… 속도λ₯Ό ν•œμΈ΅ 높일 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λ°±μ—”λ“œλŠ” Spring Bootλ₯Ό ν™œμš©ν•΄ κ΅¬μΆ•ν–ˆμŠ΅λ‹ˆλ‹€. μ²˜μŒμ—λŠ” 기상청 λ‹¨κΈ°μ˜ˆλ³΄ APIλ₯Ό λ‹¨μˆœνžˆ μ‘°νšŒν•˜λŠ” κΈ°λŠ₯μ΄λΌμ„œ μ–΄λ ΅μ§€ μ•Šμ„ 거라 μƒκ°ν–ˆμ§€λ§Œ, μ‹€μ œλ‘œλŠ” API κ΅¬μ‘°λ‚˜ 호좜 μ œν•œ 문제 λ•Œλ¬Έμ— μ˜ˆμƒλ³΄λ‹€ μ‹œκ°„μ΄ κ±Έλ ΈμŠ΅λ‹ˆλ‹€. λ°œν‘œ μ‹œκ°, 발효 μ‹œκ° λ“± λͺ‡ κ°€μ§€ κ·œμΉ™μ„ λ§žμΆ°μ„œ μš”μ²­μ„ 보내야 ν–ˆκ³ , μ—¬λŸ¬ μ§€μ—­μ˜ 데이터λ₯Ό 주기적으둜 κ°±μ‹ ν•˜λŠ” 뢀뢄도 고민이 ν•„μš”ν–ˆμŠ΅λ‹ˆλ‹€. 이런 과정을 κ±°μΉ˜λ©΄μ„œ 캐싱 ꡬ쑰 μ„€μ •μ΄λ‚˜ 곡톡 μ„œλΉ„μŠ€ λΆ„λ¦¬μ˜ ν•„μš”μ„±λ„ 많이 λŠκΌˆμŠ΅λ‹ˆλ‹€. 또, 행정ꡬ역 μ—‘μ…€ 데이터λ₯Ό νŒŒμ‹±ν•΄ μ‹œΒ·λ„ enum을 λ§Œλ“€κ³ , μœ„κ²½λ„λ₯Ό 기상청 격자 μ’Œν‘œλ‘œ λ°”κΎΈλŠ” μž‘μ—…μ„ λ§‘μœΌλ©΄μ„œ 데이터 정리와 초기 μ„€κ³„μ˜ μ€‘μš”μ„±μ„ μ²΄κ°ν•˜κ²Œ λμŠ΅λ‹ˆλ‹€. ν˜‘μ—… λ„κ΅¬λ‘œλŠ” λ¦¬λ‹ˆμ–΄λ₯Ό 처음 μ¨λ΄€λŠ”λ°, μ†Œκ·œλͺ¨ ν”„λ‘œμ νŠΈμ—μ„œ μž‘μ—… 흐름을 정리할 λ•Œ κ½€ μœ μš©ν•˜λ‹€λŠ” κ±Έ μ•Œκ²Œ λμŠ΅λ‹ˆλ‹€. μ „μ²΄μ μœΌλ‘œ 이번 ν”„λ‘œμ νŠΈλŠ” μ›Ή μ„œλΉ„μŠ€μ˜ ꡬ쑰λ₯Ό ν­λ„“κ²Œ μ΄ν•΄ν•˜λŠ” 데 크게 도움이 된 κ°’μ§„ κ²½ν—˜μ΄μ—ˆμŠ΅λ‹ˆλ‹€.


μ •μž¬μš°

이번 ν”„λ‘œμ νŠΈμ—μ„œλŠ” νŒ€μž₯ 역할을 맑으며 ν”„λ‘œμ νŠΈ μ€€λΉ„ λ‹¨κ³„μ—μ„œμ˜ ꡬ쑰 섀계와 μ§„ν–‰ λ°©μ‹μ˜ μ€‘μš”μ„±μ„ 체감할 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. ν”„λ‘œμ νŠΈλ₯Ό μ§„ν–‰ν•˜λ©° 초기 기획 λ‹¨κ³„μ—μ„œ μš”κ΅¬μ‚¬ν•­κ³Ό μž‘μ—… λ²”μœ„λ₯Ό λͺ…ν™•νžˆ μ •μ˜ν•˜λŠ” 것이 전체 일정과 완성도에 큰 영ν–₯을 λ―ΈμΉœλ‹€λŠ” 점을 확인할 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. κΈ°μˆ μ μœΌλ‘œλŠ” μΌκΈ°μ˜ˆλ³΄μ™€ 같은 μ™ΈλΆ€ APIλ₯Ό μ—°λ™ν•˜λ©΄μ„œ, 호좜 μ œν•œμ„ κ³ λ €ν•œ 캐싱 μ „λž΅μ΄ μ„œλΉ„μŠ€ μ•ˆμ •μ„±κ³Ό μ§κ²°λœλ‹€λŠ” 것을 μ‹€λ¬΄μ μœΌλ‘œ κ²½ν—˜ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ 인증과 μ ‘κ·Ό μ œμ–΄λ₯Ό ν¬ν•¨ν•œ λ³΄μ•ˆ 섀계λ₯Ό κ΅¬ν˜„ν•˜λ©° 기쑴에 ν•™μŠ΅ν–ˆλ˜ λ³΄μ•ˆ κ°œλ…μ„ λ‹€μ‹œ μ •λ¦¬ν•˜κ³  μ μš©ν•΄λ³Ό 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. ν˜‘μ—… μΈ‘λ©΄μ—μ„œλŠ” λ¦¬λ‹ˆμ–΄(Linear)λ₯Ό 이슈 관리 λ„κ΅¬λ‘œ λ„μž…ν•˜μ—¬ μ‹€μ œ ν”„λ‘œμ νŠΈ ν™˜κ²½μ—μ„œμ˜ ν™œμš© κ°€λŠ₯성을 검증해볼 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λ‹€λ§Œ κΈ°λŒ€ν–ˆλ˜ μˆ˜μ€€μ˜ νš¨μœ¨μ„ ν™•λ³΄ν•˜μ§€λŠ” λͺ»ν•΄, ν”„λ‘œμ νŠΈμ˜ 성격과 규λͺ¨μ— 보닀 μ ν•©ν•œ ν˜‘μ—… 도ꡬλ₯Ό μΆ”κ°€λ‘œ ν•™μŠ΅ν•  ν•„μš”μ„±μ„ λŠκΌˆμŠ΅λ‹ˆλ‹€. 이번 ν”„λ‘œμ νŠΈλ₯Ό 톡해 κΈ°λŠ₯ κ΅¬ν˜„λΏλ§Œ μ•„λ‹ˆλΌ, 도ꡬ 선택과 ν”„λ‘œμ νŠΈ 운영 방식 μžμ²΄κ°€ 개발 생산성에 μ€‘μš”ν•œ 영ν–₯을 λ―ΈμΉœλ‹€λŠ” 점을 인식할 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.>

About

πŸ˜Žκ°•μœ€ν˜œ|πŸ˜„μ΄μΈμž¬|πŸ˜‘μ–‘μŠΉμž¬|πŸ§μ •μž¬μš°|πŸ₯Άμ΄ν•˜κ²½

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published