λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
TIL

01/17(수) 내일배움캠프 Java 18일차 TIL - μ“°λ ˆλ“œ

by 감자개발꾼 2024. 1. 17.

 

πŸ“–  μ˜€λŠ˜μ˜ ν•™μŠ΅ ν‚€μ›Œλ“œ

  • μ“°λ ˆλ“œ
  • ν”„λ‘œμ„ΈμŠ€

 

πŸ₯”  ν”„λ‘œμ„ΈμŠ€μ™€ μ“°λ ˆλ“œ

  • ν”„λ‘œμ„ΈμŠ€ : μš΄μ˜μ²΄μ œλ‘œλΆ€ν„° μžμ›μ„ ν• λ‹Ήλ°›λŠ” μž‘μ—…μ˜ λ‹¨μœ„
  • μ“°λ ˆλ“œ : ν”„λ‘œμ„ΈμŠ€κ°€ 할당받은 μžμ›μ„ μ΄μš©ν•˜λŠ” μ‹€ν–‰μ˜ λ‹¨μœ„

 

 

πŸ₯”  ν”„λ‘œμ„ΈμŠ€

ν”„λ‘œμ„ΈμŠ€λŠ” "μ‹€ν–‰ 쀑인 ν”„λ‘œκ·Έλž¨"을 μ˜λ―Έν•©λ‹ˆλ‹€.

μ˜ˆμ‹œλ‘œ μš°λ¦¬κ°€ Java ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰μ‹œν‚€λ©΄ 이 ν”„λ‘œκ·Έλž¨μ€ ν”„λ‘œμ„ΈμŠ€λΌλŠ” μ΄λ¦„μœΌλ‘œ 운영체제 μœ„μ—μ„œ μ‹€ν–‰λ©λ‹ˆλ‹€.

 

즉, OS μœ„μ—μ„œ μ‹€ν–‰λ˜λŠ” λͺ¨λ“  ν”„λ‘œκ·Έλž¨μ€ OSκ°€ λ§Œλ“€μ–΄μ€€ ν”„λ‘œμ„ΈμŠ€μ—μ„œ μ‹€ν–‰λ©λ‹ˆλ‹€.

 

 

πŸ₯”  μ“°λ ˆλ“œ

μ“°λ ˆλ“œλŠ” ν”„λ‘œμ„ΈμŠ€ λ‚΄μ—μ„œ μΌν•˜λŠ” 일꾼이라고 μƒκ°ν•˜λ©΄ λ©λ‹ˆλ‹€.

ν”„λ‘œμ„ΈμŠ€κ°€ μž‘μ—… 쀑인 ν”„λ‘œκ·Έλž¨μ—μ„œ μ‹€ν–‰μš”μ²­μ΄ λ“€μ–΄μ˜€λ©΄ μ“°λ ˆλ“œλ₯Ό λ§Œλ“€μ–΄ λͺ…령을 μ²˜λ¦¬ν•˜λ„λ‘ ν•©λ‹ˆλ‹€.

 

 

πŸ₯”  λ©€ν‹°μ“°λ ˆλ“œ

JavaλŠ” 메인 μ“°λ ˆλ“œκ°€ main() λ©”μ„œλ“œλ₯Ό μ‹€ν–‰μ‹œν‚€λ©΄μ„œ μ‹œμž‘λ©λ‹ˆλ‹€.
- 메인 μ“°λ ˆλ“œλŠ” ν•„μš”μ— λ”°λΌμ„œ μž‘μ—… μ“°λ ˆλ“œλ“€μ„ μƒμ„±ν•˜μ—¬ λ³‘λ ¬λ‘œ μ½”λ“œλ₯Ό μ‹€ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
- 즉, JavaλŠ” λ©€ν‹° μ“°λ ˆλ“œλ₯Ό μ§€μ›ν•©λ‹ˆλ‹€.

 

❗️ μ‹±κΈ€ μ“°λ ˆλ“œ

 

- ν”„λ‘œμ„ΈμŠ€ μ•ˆμ—μ„œ ν•˜λ‚˜μ˜ μ“°λ ˆλ“œλ§Œ μ‹€ν–‰λ˜λŠ” 것을 λ§ν•©λ‹ˆλ‹€.

  • Java ν”„λ‘œκ·Έλž¨μ˜ 경우 main() λ©”μ„œλ“œλ§Œ μ‹€ν–‰ν–ˆμ„ λ•Œ μ‹±κΈ€ μ“°λ ˆλ“œλΌκ³  ν•©λ‹ˆλ‹€.
  • Java ν”„λ‘œκ·Έλž¨μ˜ main() λ©”μ„œλ“œμ˜ μ“°λ ˆλ“œλ₯Ό 메인 μ“°λ ˆλ“œλΌκ³  λΆ€λ¦…λ‹ˆλ‹€.

 

 

❗️멀티 μ“°λ ˆλ“œ

 

- ν”„λ‘œμ„ΈμŠ€ μ•ˆμ—μ„œ μ—¬λŸ¬ 개의 μ“°λ ˆλ“œκ°€ μ‹€ν–‰λ˜λŠ” 것을 λ§ν•©λ‹ˆλ‹€.

  • ν•˜λ‚˜μ˜ ν”„λ‘œμ„ΈμŠ€λŠ” μ—¬λŸ¬κ°œμ˜ μ“°λ ˆλ“œλ₯Ό κ°€μ§ˆ 수 있으며, 이 μ“°λ ˆλ“œλ“€μ€ ν”„λ‘œμ„ΈμŠ€μ˜ μžμ›μ„ κ³΅μœ ν•©λ‹ˆλ‹€.
  • Java ν”„λ‘œκ·Έλž¨μ€ 메인 μ“°λ ˆλ“œμ™Έμ— λ‹€λ₯Έ μž‘μ—… μ“°λ ˆλ“œλ“€μ„ 생성해 μ—¬λŸ¬κ°œμ˜ 싀행흐름을 λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€.

 

μž₯점

  • μ—¬λŸ¬κ°œμ˜ μ“°λ ˆλ“œλ₯Ό 톡해 μž‘μ—…μ„ λ™μ‹œμ— ν•  수 μžˆμ–΄μ„œ μ„±λŠ₯이 쒋아짐
  • μŠ€νƒμ„ μ œμ™Έν•œ λͺ¨λ“  μ˜μ—­μ—μ„œ λ©”λͺ¨λ¦¬λ₯Ό κ³΅μœ ν•˜κΈ° λ•Œλ¬Έμ— μžμ›μ„ 보닀 효율적으둜 μ‚¬μš© κ°€λŠ₯
  • 응닡 μ“°λ ˆλ“œμ™€ μž‘μ—… μ“°λ ˆλ“œλ₯Ό λΆ„λ¦¬ν•˜μ—¬ λΉ λ₯΄κ²Œ 응닡을 쀄 수 μžˆμŠ΅λ‹ˆλ‹€.

 

단점

  • 동기화 λ¬Έμ œκ°€ λ°œμƒν•  수 μžˆλ‹€.

- ν”„λ‘œμ„ΈμŠ€μ˜ μžμ›μ„ κ³΅μœ ν•˜λ©΄μ„œ μž‘μ—…μ„ μ²˜λ¦¬ν•˜κΈ° λ•Œλ¬Έμ— μžμ›μ„ μ„œλ‘œ μ‚¬μš©ν•˜λ €κ³  ν•˜λŠ” 좩돌이 λ°œμƒν•˜λŠ” 경우λ₯Ό μ˜λ―Έν•¨

 

  • ꡐ착 μƒνƒœ(λ°λ“œλ½)이 λ°œμƒν•  수 μžˆλ‹€.

- λ‘˜ μ΄μƒμ˜ μ“°λ ˆλ“œκ°€ μ„œλ‘œμ˜ μžμ›μ„ μ›ν•˜λŠ” μƒνƒœκ°€ λ˜μ—ˆμ„ λ•Œ μ„œλ‘œ μž‘μ—…μ΄ μ’…λ£Œλ˜κΈ°λ§Œμ„ 기닀리며 μž‘μ—…μ„

더 이상 μ§„ν–‰ν•˜μ§€ λͺ»ν•˜κ²Œ λ˜λŠ” μƒνƒœλ₯Ό μ˜λ―Έν•¨

 

 

 

 

 

 

πŸ“š  μ˜€λŠ˜μ˜ 회고

μ˜€λŠ˜λΆ€ν„° μŠ€ν”„λ§μ— λ“€μ–΄κ°‘λ‹ˆλ‹€.

μŠ€ν”„λ§μ—κ²Œ λ•Œλ € λ§žμœΌλ©΄μ„œ 배우며,

λ§žμ•„λ„ μΌμ–΄μ„œλ©° μ—΄μ‹¬νžˆ λ°°μš°κ² μŠ΅λ‹ˆλ‹€.