Amenable
Amenable's Blog
Amenable
  • λΆ„λ₯˜ 전체보기 (189)
    • πŸ“‚ JAVA (87)
      • μ΄νŽ™ν‹°λΈŒ μžλ°” (65)
      • μ£Όμš” κ°œλ… (22)
    • πŸ“‚ 개발 μ„œμ  (22)
      • μ‹€μš©μ£Όμ˜ ν”„λ‘œκ·Έλž˜λ¨Έ (1)
      • 객체지ν–₯의 사싀과 μ˜€ν•΄ (2)
      • 클린 μ½”λ“œ (8)
      • ν•¨κ»˜ 자라기 (1)
      • 그림으둜 λ°°μš°λŠ” HTTP&Network Basic (10)
    • πŸ“‚ λ°μ΄ν„°λ² μ΄μŠ€ (8)
      • κ°œλ… (8)
      • λ¬Έμ œν’€μ΄ (0)
    • πŸ“‚ λ„€νŠΈμ›Œν¬ (14)
      • κ°œλ… (6)
      • 성곡과 μ‹€νŒ¨λ₯Ό κ²°μ •ν•˜λŠ” 1%의 λ„€νŠΈμ›Œν¬ 원리 (8)
    • πŸ“‚ μŠ€ν”„λ§ (13)
      • κΈ°λ³Έ κ°œλ… (13)
    • πŸ“‚ WEB (5)
    • πŸ“‚ 자료ꡬ쑰 (12)
      • κ°œλ… (2)
      • μ •λ ¬ (8)
      • 트리 (2)
    • πŸ“‚ μ•Œκ³ λ¦¬μ¦˜ (10)
      • μ΅œμ†Œμ‹ μž₯트리 (2)
      • μ΅œλ‹¨ 경둜 (2)
      • λ¬Έμžμ—΄ (2)
      • ETC (4)
    • πŸ“‚ μ•Œκ³ λ¦¬μ¦˜_λ¬Έμ œν’€μ΄ (4)
      • BOJ_λ°±μ€€ (4)
    • πŸ“‚ ν”„λ‘œκ·Έλž˜λ° (3)
    • πŸ“‚ DevOps (2)
      • 배포 (2)
    • πŸ“‚ ν›„κΈ° (8)
      • μš°μ•„ν•œ ν…Œν¬μ½”μŠ€(ν”„λ¦¬μ½”μŠ€) (4)
      • 2023λ…„ (3)
      • 2024λ…„ (1)
    • πŸ“‚ 회고 (1)
      • 2023λ…„ (1)

λΈ”λ‘œκ·Έ 메뉴

  • πŸš€ GitHub

ν‹°μŠ€ν† λ¦¬

hELLO Β· Designed By μ •μƒμš°.
Amenable

Amenable's Blog

νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°(Pair Programming) ν›„κΈ°
πŸ“‚ ν›„κΈ°/2023λ…„

νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°(Pair Programming) ν›„κΈ°

2023. 5. 28. 23:52

🌞 1. μ„œλ‘ 

  2λͺ…μ΄μ„œ ν”„λ‘œμ νŠΈλ₯Ό μ§„ν–‰ν•΄μ•Ό ν•  일이 μžˆμ—ˆλ‹€.

  μ§€κΈˆκΉŒμ§€λŠ” ν˜‘μ—…μ„ ν•œλ‹€κ³  ν•˜λ©΄ '뢄업을 ν•˜κ³  각자 맑은 일을 ν•˜λŠ” 방식'으둜 ν˜‘μ—…μ„ μ§„ν–‰ν•˜μ˜€λ‹€.

  ν•˜μ§€λ§Œ 이 ν”„λ‘œμ νŠΈλ₯Ό ν•˜κΈ° 전에 'ν•¨κ»˜ 자라기 - μ• μžμΌλ‘œ κ°€λŠ” κΈΈ'μ΄λΌλŠ” 책을 μ½μ—ˆκ³ , μœ„μ—μ„œ μ–ΈκΈ‰ν•œ 방식이 ν˜‘λ ₯을 μœ„ν•œ 방식이 μ•„λ‹ˆλΌλŠ” κ±Έ μ•Œκ²Œ λ˜μ—ˆλ‹€. 

μ‚¬λžŒλ“€μ€ ν˜‘λ ₯이 μ€‘μš”ν•˜λ‹€κ³  ν•©λ‹ˆλ‹€.
κ·Έλž˜μ„œ ν”„λ‘œμ νŠΈλ₯Ό ν•  λ•Œ ν˜‘λ ₯적으둜 ν•˜μžκ³  ν•©λ‹ˆλ‹€.
κ·ΈλŸ¬λ‚˜ μ‹€μ œ λͺ¨μŠ΅μ„ 듀여닀보면 μ΄ˆλ°˜μ— 일을 μ„Έλ°€ν•˜κ²Œ λ‚˜λˆ„κ³  선을 κΈ‹μŠ΅λ‹ˆλ‹€.
그리고 μ•ˆλ…•μ΄μ£ .

각자 μ§„ν–‰ν•˜κ³  λ‚˜μ€‘μ— λ§Œλ‚˜μ„œ μ„œλ‘œ ν•©μ³λ΄…λ‹ˆλ‹€.
κ·Έ 속을 듀여닀보면 ν˜‘λ ₯은 거의 μ—†μŠ΅λ‹ˆλ‹€.

- ν•¨κ»˜ 자라기 쀑 일뢀 λ‚΄μš© -

  κ·Έλž˜μ„œ 이번 κΈ°νšŒμ— μ• μžμΌ 방법둠 쀑 ν•˜λ‚˜μΈ νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°(Pair Programming)을 λ„μž…ν•΄λ³΄κ³ μž ν•˜μ˜€λ‹€.

  κ·Έλž˜μ„œ νŽ˜μ–΄μ—κ²Œ "ν˜Ήμ‹œ νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ„ μ•ˆ ν•΄λ΄€μœΌλ©΄ ν•œλ²ˆ ν•΄λ³ΌκΉŒ?"라고 λ¬Όμ–΄λ΄€λŠ”λ° 생각보닀 λ„ˆλ¬΄ ν”μΎŒνžˆ μˆ˜λ½ν•΄ μ£Όμ—ˆλ‹€. (그러고 λ³΄λ‹ˆ μ•„μ§κΉŒμ§€λ„ λ‚΄κ°€ μ™œ νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ„ μ œμ•ˆν–ˆλŠ”μ§€ νŽ˜μ–΄μ—κ²Œ μ„€λͺ…을 μ•ˆ ν•΄μ£Όμ—ˆλŠ”λ° 이 글을 κ³΅μœ ν•˜λŠ” 걸둜 μ„€λͺ…을 λŒ€μ²΄ν•΄μ•Όκ² λ‹€.πŸ˜…)

  κ·Έλ ‡κ²Œ 우리의 νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ΄ μ‹œμž‘λ˜μ—ˆλ‹€.

day1
day2
day3

  기간은 '2023λ…„ 05μ›” 17일(μˆ˜μš”μΌ) ~ 2023λ…„ 05μ›” 19(κΈˆμš”μΌ)', 총 3일 λ™μ•ˆ μ§„ν–‰ν•˜μ˜€λ‹€. μ‹œκ°„μ€ ν•˜λ£¨μ— 6μ‹œκ°„ λ‚΄μ™Έλ‘œ μž‘업을 ν•˜μ˜€λ‹€.

  νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ„ ν•˜λ©΄μ„œ μ—¬λŸ¬ κ°€μ§€ λŠλ‚€ 점이 μžˆμ—ˆμ§€λ§Œ 그쀑 κ°€μž₯ 기얡에 λ‚¨λŠ” 3κ°€μ§€λ₯Ό μ μ–΄λ³΄κ³ μž ν•œλ‹€.

 

 

🌞 2. λŠλ‚€ 점

πŸ“Œ 1. 배운 것을 μ μš©ν•˜λ €κ³  λ”μš± 애써야 ν•œλ‹€.

  Entityλ₯Ό λ§Œλ“œλŠ” κ³Όμ •μ—μ„œ λ‚˜μ˜ νŽ˜μ–΄κ°€ μžμ—°μŠ€λŸ½κ²Œ λΉŒλ” νŒ¨ν„΄(Builder Pattern)을 μ‚¬μš©ν•˜μ˜€λ‹€. μ΄μ „κΉŒμ§€ λ‚˜λŠ” μƒμ„±μžλ₯Ό μ“°κ±°λ‚˜ 쑰금 더 κ³ λ €ν•  상황이 있으면 점측적 μƒμ„±μž νŒ¨ν„΄μ„ μ‚¬μš©ν•΄ μ™”μ—ˆλ‹€. κ·Έλž˜μ„œ λΉŒλ” νŒ¨ν„΄μ„ μ™œ μ“°λŠ”μ§€ λ¬Όμ–΄λ΄€κ³  λΉŒλ” νŒ¨ν„΄μ„ μ–΄λ–€ μƒν™©μ— μ“°λ©΄ μ’‹μ€μ§€μ— λŒ€ν•œ μ˜κ²¬μ„ λ“€μ„ μˆ˜ μžˆμ—ˆλ‹€.

 

  그런데 μž μ‹œ?... λ“£λ‹€ λ³΄λ‹ˆ μ–΄λ””μ„œ λ³Έ λ‚΄μš©μ΄μ—ˆλ‹€?...

  μ•Œκ³  λ³΄λ‹ˆ μ΄νŽ™ν‹°λΈŒ μžλ°”μ˜ μ•„μ΄ν…œ 2인 'μƒμ„±μžμ—κ²Œ λ§€κ°œλ³€μˆ˜κ°€ λ§Žλ‹€λ©΄ λΉŒλ”λ₯Ό κ³ λ €ν•˜λΌ'μ—μ„œ 닀룬 λ‚΄μš©μ΄μ—ˆλ‹€. ν•΄λ‹Ή λ‚΄μš©μ„ 읽고 λΈ”λ‘œκΉ…κΉŒμ§€ ν–ˆμ—ˆλŠ”λ° 까맣게 μžŠμ–΄λ²„λ¦¬κ³  μžˆλŠ” κ²ƒμ΄μ—ˆλ‹€. λΈ”λ‘œκΉ…ν•œ 글을 보자마자 λ‚΄μš©λ“€μ΄ μƒκ°λ‚˜κΈ΄ ν–ˆμ§€λ§Œ, λ„ˆλ¬΄ 까맣게 μžŠμ–΄λ²„λ¦¬κ³  μžˆμ–΄μ„œ 쑰금 μΆ©κ²©μ΄κΈ°λŠ” ν–ˆλ‹€.

 

  κ·Έλž˜μ„œ μ½”λ“œλ₯Ό μ§€ λ•Œ '쑰금 더 λ‚˜μ€ 방법이 μ—†μ„κΉŒ?', 'λ°°μ› λ˜ 것을 이런 μƒν™©μ—μ„œ μ“°λ©΄ λ˜μ§€ μ•Šμ„κΉŒ?'λΌλŠ” 고민듀을 μ˜λ„μ μœΌλ‘œ ν•΄μ•Όκ² λ‹€λŠ” 생각이 λ“€μ—ˆλ‹€.

 

πŸ“Œ2. λ…Όλ¦¬μ μœΌλ‘œ μ‚¬κ³ ν•˜λŠ” μ—°μŠ΅μ„ ν•˜μž.

  @RequestBodyλ₯Ό μ΄μš©ν•΄μ„œ 2개의 객체λ₯Ό 받을 일이 μžˆμ—ˆλ‹€.

πŸ‘¨‍🦱 νŽ˜μ–΄ : 객체 2κ°œκ°€ λ„˜μ–΄μ˜€λŠ”λ°, @RequestBody 2개 μ“°λ©΄ λ˜μ§€?
πŸ’¬ λ‚˜μ˜ 생각 : 객체가 1개일 λ•Œ @RequestBodyλ₯Ό 1개 μΌμœΌλ‹ˆκΉ, 객체가 2개일 λ•ŒλŠ” @RequestBodyλ₯Ό 2개 μ“°μž.
πŸ‘±‍♂️ λ‚˜μ˜ λ‹΅λ³€ : 응. 2개 μ“°λ©΄ 될꺼같은데?

  μœ„μ˜ λŒ€ν™”μ—μ„œ 'νŽ˜μ–΄μ˜ 질문, λ‚˜μ˜ 생각, λ‚˜μ˜ λ‹΅λ³€'이 λ„ˆλ¬΄λ‚˜λ„ μžμ—°μŠ€λŸ½κ²Œ ν˜λŸ¬κ°”λ‹€. 싀행을 ν–ˆλŠ”λ° λ‹Ήμ—°νžˆ μ›ν•˜λŠ” κ°’을 μ–»μ§€ λͺ»ν–ˆλ‹€. κ·Έλ ‡κ²Œ ν•˜λ©΄ μ•ˆ λ˜λŠ” κ±°μ˜€λ‹€.

  @RequestBodyλŠ” HTTP μš”μ²­μ˜ Bodyλ₯Ό κ·ΈλŒ€λ‘œ λ°›μ•„ μžλ°” 객체둜 λ³€ν™˜ν•΄ μ£ΌλŠ” 것이닀. 그리고 단일 κ°μ²΄λ§Œμ„ μ²˜λ¦¬ν•  수 있기 λ•Œλ¬Έμ—, μ—¬λŸ¬ 객체λ₯Ό λ°›κ³  싢을 κ²½μš°μ—λŠ” ν•˜λ‚˜μ˜ μš”μ²­μœΌλ‘œ κ΅¬μ„±ν•œ ν›„ μ—¬λŸ¬ 객체둜 μͺΌκ°œμ„œ μ²˜λ¦¬ν•˜λŠ” λ“±μ˜ 방식을 μ‚¬μš©ν•΄μ•Ό ν•œλ‹€.

 

  문제λ₯Ό ν•΄κ²°ν•˜λŠ” 것은 μ–΄λ ΅μ§€ μ•Šμ•˜μ§€λ§Œ, μœ„μ—μ„œ λ‚΄κ°€ νŽ˜μ–΄μ—κ²Œ 닡변을 ν•˜λŠ” κ³Όμ •μ—μ„œ κ³ μΉ  점이 μžˆλ‹€κ³  μƒκ°ν•œλ‹€. λ‚˜μ˜ μƒκ°μ˜ νλ¦„이 μ‘°κΈˆμ€ λ” λ…Όλ¦¬μ μ΄μ–΄μ•Ό ν•œλ‹€λŠ” κ²ƒμ΄λ‹€.

πŸ‘¨‍🦱 νŽ˜μ–΄ : 객체 2κ°œκ°€ λ„˜μ–΄μ˜€λŠ”λ°, @RequestBody 2개 μ“°λ©΄ λ˜μ§€?
πŸ’¬ λ‚˜μ˜ 생각 : HTTP BodyλŠ” ν•œ κ°œλ‹€. → @RequestBodyλ₯Ό 2개 μ“°λ©΄ Http Bodyκ°€ 2κ°œμ—¬μ•Ό ν•  κ±° 같은데, 이건 말이 μ•ˆ λœλ‹€. → μš”μ²­μ—μ„œ ν•˜λ‚˜λ‘œ λ¬Άμ–΄μ„œ 보내고, μš”μ²­μ„ λ°›μ•„μ„œ λ‚˜λˆ„μž.
πŸ‘±‍♂️ λ‚˜μ˜ λ‹΅λ³€ : @RequestBodyλ₯Ό 2개 μ“°λ©΄ HTTP Bodyκ°€ 2κ°œμ—¬μ•Ό ν•  κ±° 같은데, 객체 2개λ₯Ό ν•˜λ‚˜μ˜ μš”μ²­μ— λ¬Άμ–΄μ„œ ν•˜λŠ” 게 λ§žμ„ κ±° 같은데? κ·Έλ ‡κ²Œ ν•΄μ„œ ν•œλ²ˆ μ‹€ν–‰ν•΄ 보고, 더 쒋은 방법이 μžˆλŠ”μ§€ 같이 μ°Ύμ•„λ³΄μž.

  λ¬Όλ‘  λͺ¨λ“  μƒν™©μ—μ„œ 항상 λ…Όλ¦¬μ μœΌλ‘œ 닡변을 ν•  μˆ˜λŠ” 없을 것이닀. ν•˜μ§€λ§Œ, μ•Œκ³  μžˆλŠ” κ²ƒμ„ λ°”νƒ•μœΌλ‘œ μ΅œλŒ€ν•œ λ…Όλ¦¬μ μœΌλ‘œ μ‚¬κ³ ν•˜λ„둝 μ—°μŠ΅ν•΄μ•Ό ν•  것이닀.

 

πŸ“Œ λŠλ‚€ 점 3. 일과 νœ΄μ‹μ˜ 밸런슀

  μ΄μ „κΉŒμ§€ μž‘μ—…μ„ ν•  λ•ŒλŠ” '집쀑될 λ•ŒκΉŒμ§€ μΌν•˜κ³ , μ‰¬κ³  μ‹Άμ„ λ•ŒκΉŒμ§€ μ‰¬λŠ” λ°©μ‹'으둜 μž‘μ—…μ„ ν•˜μ˜€λ‹€. κ·Έλ ‡λ‹€κ³  κ³„μ†ν•΄μ„œ μ‰¬λŠ” 게 μ•„λ‹ˆλΌ, '1μ‹œκ°„ 30λΆ„ μΌν•˜κ³ , 20λΆ„ μ‰¬κΈ°', '2μ‹œκ°„ 30λΆ„ μΌν•˜κ³ , 30λΆ„ μ‰¬κΈ°' μ •λ„μ˜ λΉ„μœ¨μ„ λ§žμΆ”κΈ°λŠ” ν–ˆλ‹€...πŸ˜…

 

  ν•˜μ§€λ§Œ, νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ„ ν•  λ•ŒλŠ” ν•œ μ‚¬λžŒμ˜ μž‘μ—… λ¦¬λ“¬μ—λ§Œ λ§žμΆ°μ„œ μ§„ν–‰ν•  μˆ˜λŠ” μ—†κΈ° λ•Œλ¬Έμ— '50λΆ„ μΌν•˜κ³ , 10λΆ„ μ‰¬λŠ” 방식'으둜 μ§„ν–‰ν•˜μ˜€λ‹€.

  μƒˆλ‘œμš΄ λ°©μ‹μ΄λΌμ„œ κ·ΈλŸ°μ§€, μ•„λ‹ˆλ©΄ 이 방식이 쑰금 더 μ ν•©ν•΄μ„œ κ·ΈλŸ°μ§€λŠ” λͺ°λΌλ„ μž‘μ—…μ„ ν•  λ•Œ 집쀑λ ₯이 μ˜¬λΌκ°„λ‹€λŠ” λŠλ‚Œμ΄ λ“€μ—ˆλ‹€. (λ¬Όλ‘  μ˜†μ— νŽ˜μ–΄κ°€ μžˆκΈ° λ•Œλ¬Έμ— μ§‘쀑λ ₯이 μ˜¬λΌκ°”을 μˆ˜λ„ μžˆλ‹€.)

 

  λ³€μˆ˜κ°€ λ„ˆλ¬΄ 많기 λ•Œλ¬Έμ— μ•„μ§κΉŒμ§€ μ–΄λ–€ 게 λ§žλŠ”μ§€ ν™•μ‹ ν•  μˆ˜λŠ” μ—†λ‹€. ν•˜μ§€λ§Œ, μ—¬λŸ¬ μƒν™©μ—μ„œ μ—¬λŸ¬ κ°€μ§€ μ‹œκ°„ μ‚¬μš© νŒ¨ν„΄μ„ μ μš©ν•΄ λ³΄λ©΄μ„œ μ–΄λ–€ 게 μ’‹μ€μ§€ ν™•μΈν•˜κ³  μˆ˜μ •ν•  ν•„μš”λŠ” μžˆλ‹€κ³  μƒκ°λœλ‹€.

 

 

🌞 3. 마무리

  'λ‚΄κ°€ 아직 잘 λͺ¨λ₯΄λ„€?'λΌλŠ” 생각을 100번 λ„˜κ²Œ ν•  정도에 νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ΄ 끝이 났닀.

  쒋은 νŽ˜μ–΄λ₯Ό λ§Œλ‚œ 덕뢄에 ν˜„μž¬ λ‚˜λŠ” νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ˜ μž₯점만 μ•Œκ³  μžˆλŠ” 건 μ•„λ‹κΉŒλΌλŠ” 생각이 듀기도 ν•œλ‹€. 음... λ°°λΆ€λ₯Έ μ†Œλ¦¬λ‹€...πŸ˜‚

  νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ„ 톡해 μƒˆλ‘œμš΄ κ²½ν—˜μ„ ν•˜κ³  μƒˆλ‘œμš΄ 것을 배울 수 μžˆμ–΄μ„œ μ’‹μ•˜λ‹€.

  이 글을 톡해 즐겁게 νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ„ ν•˜κ²Œ ν•΄ μ€€ νŽ˜μ–΄μ—κ²Œ λ‹€μ‹œ ν•œλ²ˆ κ³ λ§™λ‹€λŠ” 말을 ν•˜κ³  μ‹Άλ‹€.

 

  그리고 νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ„ ν•˜λ©΄ μ•„λž˜μ˜ 뱃지(Achievement)λ₯Ό 얻을 수 μžˆλ‹€.

  νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°λ„ ν•˜κ³  'κ³΅λ™μž‘μ—…μž κΈ°λŠ₯'도 μ‚¬μš©ν•΄ λ³΄λ©΄μ„œ λ‹€λ“€ ν•΄λ‹Ή 뱃지도 얻을 수 μžˆμ—ˆμœΌλ©΄ μ’‹κ² λ‹€.

 

 

'πŸ“‚ ν›„κΈ° > 2023λ…„' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

μ—˜λΌμŠ€ν‹±μ„œμΉ˜(Elasticsearch) 적용 ν›„κΈ°  (0) 2023.12.08
ν…ŒμŠ€νŠΈ 컀버리지 100% 달성 ν›„κΈ°  (2) 2023.12.07
    'πŸ“‚ ν›„κΈ°/2023λ…„' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
    • μ—˜λΌμŠ€ν‹±μ„œμΉ˜(Elasticsearch) 적용 ν›„κΈ°
    • ν…ŒμŠ€νŠΈ 컀버리지 100% 달성 ν›„κΈ°
    Amenable
    Amenable
    CS, μžλ°”, 자료ꡬ쑰, μ•Œκ³ λ¦¬μ¦˜, μŠ€ν”„λ§, μŠ€ν”„λ§ λΆ€νŠΈμ— ν•΄λ‹Ήν•˜λŠ” κ°œλ°œμ— κ΄€ν•œ λ‚΄μš©μ„ κ³΅μœ ν•©λ‹ˆλ‹€.

    ν‹°μŠ€ν† λ¦¬νˆ΄λ°”