- μΌμ μ λ±λ‘νκ³ λ€λ₯Έ μ¬λλ€κ³Ό 곡μ ν μ μλ μ€μκ° μΌμ 곡μ μΉ μ ν리μΌμ΄μ μ λλ€.
- λ‘κ·ΈμΈ νλ‘μΈμ€ ꡬνκ³Ό λ©μΌ μ μ‘ κΈ°λ₯, μ΄λ―Έμ§ μ λ‘λ κΈ°λ₯μ ꡬννμμΌλ©°, μ€μκ° μΌμ 곡μ κΈ°λ₯ ꡬνμ μΌλΆ κΈ°μ¬νμμ΅λλ€.
- Spring Bootλ₯Ό μ¬μ©ν΄ λ³Έ 첫 νλ‘μ νΈμ΄λ©°, OAuth2.0μ΄λΌλ μμν κΈ°μ μ μ¬μ©ν΄λ³Ό μ μμμ΅λλ€.
- Google Slides, Notion λ±μ μ΄μ©νμ¬ νμλ€κ³Ό ν¨κ» ꡬ체μ μΈ μ€κ³λ₯Ό μ§νν΄λ³Ό μ μμμΌλ©° λΈλμΉ μ λ΅μ μ립νκ³ μ»€λ° κ·μΉμ μ νλ λ±μ ν νλ‘μ νΈ κ²½νμ ν΄λ³Ό μ μμμ΅λλ€.
- κΉλ―Όμ¬ : μΌμ μΊλ¦°λ μΆλ ₯, μΌμ μΆκ° μμ λ° μμ , ν΄μ§ν΅, μ¦κ²¨μ°ΎκΈ°, κ²μ, 무ν μ€ν¬λ‘€ κΈ°λ₯
- λΌμ¬ν¬ : μΌμ λ©μΈ λ° μμΈ λ μ΄μμ, μΌμ μ΄λ λ° κ³΅μ , μΌμ λ΄μ© λ³κ²½ μ€μκ° λ°μ, νΈμ μλ¦Ό
- μ΄μ§κ· : νμ κ°μΈμ 보 κ΄λ¦¬(λ§μ΄νμ΄μ§), νμ κ΄λ¦¬(κ΄λ¦¬μνμ΄μ§)
- μ€μΈμ± : μΉ΄μΉ΄μ€ μμ λ‘κ·ΈμΈ, νμκ°μ , μ΄λ©μΌ μ μ‘ κΈ°λ₯, μ΄λ―Έμ§ μ μ₯ κΈ°λ₯
- calenkitμ λΆκ°μ μ€λͺ μ WIKIλ₯Ό μ΄μ©νμ΅λλ€.
- calenkit WIKI λ΄μ©μ μ°Έκ³ ν΄μ£ΌμΈμ.
- Github
- Notion
- Google Slide
- diagrams.net
- ERD Cloud
- Discord
- Code with Me (IntelliJ)
- Github-Flow μ λ΅κ³Ό μ μ¬ν¨
- μμ μ user-branchμμλ§ μ΄λ£¨μ΄μ§λ©° develop, main λΈλμΉλ‘ μ§μ μ κ·Ό λΆκ°λ₯
- μλ‘μ΄ λΈλμΉλ developμ κΈ°μ€μΌλ‘ μμ±νμ¬ μμ μ§ν
- λΈλμΉλ λ‘컬μ commitνκ³ μ κΈ°μ μΌλ‘ user-branchλ‘ push
- μ ν΄μ§ νμμκ°μ μ½λ리뷰λ₯Ό μ§ννκ³ pull-requestλ₯Ό μμ±ν΄ develop λΈλμΉλ‘ λ³ν©
- λ³ν©μ rebase-mergeλ‘, μΆ©λμ΄ μμ κ²½μ° mergeλ‘ μ§ν
- develop λΈλμΉμ λ³ν© ν user-branchλ‘ pull λ°μ κΈ°λ₯ ν μ€νΈ
- [FEAT] λ¬Έμ λ΄ κΈ°λ₯ μΆκ°, λ³κ²½, μμ μ΄ λ°μν κ²½μ°
- [DESIGN] λ¬Έμ λ΄ μ½λ μμ (CSS) λ°μν κ²½μ° (κΈ°λ₯ μν₯ μμ)
- [FIX] λ¬Έμ λ΄ μ½λ λ²κ·Έ μμ λ°μν κ²½μ°
- [DOCS] λ¬Έμμ μΆκ°, μμ , λ³κ²½
- [STYLE] μ½λ κ°λ μ±μ μν μμ (μ£Όμ, λ€μ¬μ°κΈ° λ±) λ°μν κ²½μ° (κΈ°λ₯ μν₯ μμ)
- [REFACTOR] ν¨μ¨ μ¦κ°λ₯Ό μν μμ (κΈ°λ₯ μν₯ μμ)
- [TEST] ν μ€νΈ μ½λ μΆκ° μμ λ³κ²½ - ν μ€νΈ μ½λ κ΄λ ¨ λͺ¨λ λ³κ²½μ¬νλ€
- [ETC] κΈ°ν μ λ§€ν κ²½μ°
- νΉμ μμ²μ μ μΈν λλΆλΆμ μμ²λ€μ λ‘κ·ΈμΈμ ν λ€μ μ΄μ©ν μ μκ³ , κ΄λ¦¬μ κ³μ κ³Ό μΌλ° νμ κ³μ μ μλ‘ λ€λ₯Έ νμ΄μ§μλ§ μ κ·Ό κ°λ₯νλλ‘ μ€κ³νμμ΅λλ€. κ·Έλμ λ§€ μμ²λ§λ€ λ‘κ·ΈμΈμ΄ λμ΄μλμ§, κΆνμ΄ μλμ§λ₯Ό 체ν¬ν νμκ° μμμ΅λλ€.
- μμ²λ§λ€ λ‘κ·ΈμΈ μν λ° κΆνμ μλμΌλ‘ κ²μ¬νκΈ° μν΄μ Spring Interceptorλ₯Ό νμ©νμ¬ μΈμ¦μ΄ νμν μμ²μ΄ λ€μ΄μμ λ, μμ²μ κ°λ‘μ±μ μΈμ¦ λ° μΈκ°λ₯Ό μ²λ¦¬νλ νλ‘μΈμ€λ₯Ό λ§λ€μμ΅λλ€.
- μΌλ° μ μ μ κ΄λ¦¬μ κΆνμ ꡬλ³νμ¬μΌ νκΈ° λλ¬Έμ μΈν°μ ν°λ₯Ό λΆλ¦¬νμ¬ κΆνλ§λ€ λ€λ₯Έ μΈν°μ ν°κ° λμνλλ‘ νμμ΅λλ€.
- λ‘κ·ΈμΈ μμ μΌλΆ λ‘κ·ΈμΈ νν(λ‘κ·ΈμΈ μ½λλ₯Ό μ΄μ©νμ¬ λ‘κ·ΈμΈ, νμκ°μ ν λ‘κ·ΈμΈ)μμλ λ‘κ·ΈμΈ λλ νμκ°μ μ μν μ½λλ₯Ό μ΄λ©μΌλ‘ μ μ‘νμ¬ μΈμ¦μ νλλ‘ νμμ΅λλ€.
- μ΄λ©μΌ μ μ‘μ μ²λ¦¬νκΈ° μν λ°©λ²μΌλ‘ JavaMailSender λΌμ΄λΈλ¬λ¦¬μ Google SMTPλ₯Ό μ΄μ©νμ¬ λ‘κ·ΈμΈμ μλν λ λΉλ°λ²νΈ λμ μ λ ₯ν λ‘κ·ΈμΈ μ½λλ₯Ό λ©μΌλ‘ μ μ‘νλ κΈ°λ₯μ ꡬννμμ΅λλ€.
- μ΄λ©μΌ μ μ‘μ λ€λ₯Έ λ‘μ§μ λΉν΄ μλκ° νμ ν λλ ΈκΈ° λλ¬Έμ λ‘κ·ΈμΈ μ½λλ₯Ό λ°κΈνλ μ½λμ κ°μ΄ μμ² μ²λ¦¬λ₯Ό νκ² λλ©΄, μ΄λ©μΌ μ μ‘μ΄ μλ£λκΈ°κΉμ§ μλ΅μ΄ μ§μ°λλ λ¬Έμ κ° μκ²Όμ΅λλ€.
- μ΄λ₯Ό ν΄κ²°νκΈ° μνμ¬ ν΄λΌμ΄μΈνΈμμ λ‘κ·ΈμΈ μ½λλ₯Ό μμ²ν λ, μ΄λ©μΌ μ μ‘ μμ²μ λΉλκΈ°μμΌλ‘ μ μ‘νλλ‘ κ΅¬ννμ¬ λ©μΌ μ μ‘μΌλ‘ μΈν΄ 3μ΄κΉμ§ μ§μ°λ μλ΅μ΄ 1μ΄ λ΄λ‘ μλ΅λ μ μλλ‘ νμμ΅λλ€.
- νμκ°μ μ, νΉμ νλ‘ν μμ μμ νλ‘ν μ΄λ―Έμ§λ₯Ό μ€μ νκ³ μ μ₯νλ κΈ°λ₯μ ꡬννμμ΅λλ€.
- κ·Έλ¬λ λ°°ν¬ν λ€μλ λ‘컬μ μ΄λ―Έμ§λ₯Ό κ³μ μ μ₯νλ€λ³΄λ©΄ μλ²μ μ μ₯κ³΅κ° λΆμ‘±ν΄μ§ κ°λ₯μ±μ΄ μμκ³ , κ΄λ¦¬λ λΆνΈνμμ΅λλ€. κ·Έλμ μΈλΆ μ μ₯μμ μ΄λ―Έμ§λ₯Ό μ μ₯νκ³ μΉνμ΄μ§λ₯Ό λ λλ§ν λ λΆλ¬μ¬ νμκ° μμμ΅λλ€.
- ν΄κ²° λ°©λ²μΌλ‘ μΈλΆ μ μ₯μμΈ Amazon S3μ μ΄λ―Έμ§λ₯Ό μ μ₯νκ³ ν΄λΉ μ΄λ―Έμ§ κ²½λ‘μμ μ΄λ―Έμ§λ₯Ό μ°Ύμμ 보μ¬μ€ μ μλλ‘ κ΅¬ννμμ΅λλ€.
- μΉ΄μΉ΄μ€ μμ λ‘κ·ΈμΈ κΈ°λ₯μ ꡬννκΈ° μν΄μλ μΉ΄μΉ΄μ€ μΈμ¦ μλ²μ ν΅μ νμ¬ AccessKeyλ₯Ό λ°κ³ , μΉ΄μΉ΄μ€ λ¦¬μμ€ μλ²μ ν΅μ νμ¬ μ¬μ©μμ μ 보λ₯Ό λ°μμ¬ μ μμ΄μΌ ν©λλ€.
- κΈ°μ‘΄ μλ²μ APIλ‘λ μΈλΆμ ν΅μ μ΄ λΆκ°λ₯νμκ³ , μλ² μΈλΆμ APIμ ν΅μ ν μ μλ λ°©λ²μ μ°ΎμμΌνμ΅λλ€.
- OpenFeignμ μΈν°νμ΄μ€λ₯Ό λ§λ€κΈ°λ§ νλ©΄ μΈλΆμ APIλ₯Ό μ½κ² νΈμΆν μ μλ€λ μ₯μ μ΄ μμμ΅λλ€.
- OpenFeignμ μ¬μ©νμ¬ Kakao μΈμ¦ μλ² λ° λ¦¬μμ€ μλ² APIλ₯Ό νΈμΆνμ¬ νμμ μ 보λ₯Ό λ°μμ€κ³ , ν΄λΉ μ 보λ₯Ό λ°νμΌλ‘ μΈμ μ€μ λ° νμκ°μ μ μ§ννλλ‘ κ΅¬νν μ μμμ΅λλ€.
- λ€λ§, OpenFeignμ μ¬μ©νμ¬ μΈλΆ APIλ₯Ό νΈμΆνλ©΄, API μ€νμ μ§μ ꡬνν΄μΌ νκΈ°μ μΈμ¦ μλ²μ 리μμ€ μλ² API νΈμΆμ© ν΄λμ€μ DTOκΉμ§ μ΄ 6κ°μ ν΄λμ€κ° νμνμ΅λλ€. μ΄λ‘ μΈν΄, κ΄λ¦¬ν΄μΌ ν ν΄λμ€κ° λ§μμ λ‘μ§ νμ μ΄ λ³΅μ‘ν΄μ‘μ΅λλ€.
- λ¬Έμ λ₯Ό ν΄κ²°νκ³ μ OAuth2.0 μΈμ¦μ λ³΄λ€ μ½κ² ν μ μλ λ°©λ²μ μ°Ύμ보μκ³ , OAuth Client λΌμ΄λΈλ¬λ¦¬λ₯Ό μ΄μ©νλ©΄ OAuth2.0 μΈμ¦μ μν ν΄λμ€λ₯Ό μ 곡λ°μ μλΉμ€ ν΄λμ€ νλλ‘ μΈμ¦μ ν μ μλ€λ μ¬μ€μ μκ²λμμ΅λλ€. OAuth Clientλ₯Ό μ΄μ©ν μΈμ¦μΌλ‘ 리ν©ν λ§ ν¨μΌλ‘μ¨ μΈμ¦μ μν 6κ°μ ν΄λμ€κ° 1κ°μ ν΄λμ€λ‘ μ€μ΄λ€μ΄ μ μ§λ³΄μμ ν¨μ¨μ±μ λμΌ μ μμμ΅λλ€.
- μΉ΄μΉ΄μ€ μμ
λ‘κ·ΈμΈ

- νμ μ λ³΄κ° μ‘΄μ¬νκ³ λΉλ°λ²νΈκ° μ‘΄μ¬ν κ²½μ°, λΉλ°λ²νΈλ‘ λ‘κ·ΈμΈ

- νμ μ λ³΄κ° μ‘΄μ¬νκ³ λΉλ°λ²νΈκ° μ‘΄μ¬νμ§ μμ κ²½μ°, λ‘κ·ΈμΈ μ½λλ‘ λ‘κ·ΈμΈ
- νμ μ λ³΄κ° μ‘΄μ¬νμ§ μμ κ²½μ°, νμκ°μ μ½λλ‘ λ‘κ·ΈμΈ


























