λ‘œμΌ“πŸΎ
article thumbnail
[Spring] μŠ€ν”„λ§ DI, IoC μ΄ν•΄ν•˜κΈ°
... 2021. 1. 2. 14:56

μžλ™μ°¨μ—μ„œ λ§Œμ•½ 엔진이 μ˜€λž˜λ˜μ„œ 엔진을 λ°”κΎΈκ³  μ‹Άλ‹€λ©΄, μžλ™μž 전체가 μ•„λ‹Œ μ—”μ§„λ§Œ λ½‘μ•„μ„œ λ°”κΏ”μ£Όλ©΄ λ©λ‹ˆλ‹€. 객체 지ν–₯ ν”„λ‘œκ·Έλž˜λ°μ—μ„œλ„ ν΄λž˜μŠ€μ— λŒ€ν•œ 변경이 ν•„μš”ν•˜λ©΄ λ‹€λ₯Έ ν΄λž˜μŠ€μ— 영ν–₯을 λΌμΉ˜μ§€ μ•ŠμœΌλ©΄μ„œ 변경이 κ°€λŠ₯ν•΄μ•Ό ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ 상황에 더 μˆ˜μ›”ν•˜κ²Œ 변경이 κ°€λŠ₯μΌ€ λ„μ™€μ€„μˆ˜ μžˆλ„λ‘ λ„μž…λœ κΈ°λŠ₯이 λ°”λ‘œ DI(Dependency Injection)와 IoC(Inversion of Control)μž…λ‹ˆλ‹€. μžλ°”λ‘œ ν”„λ‘œκ·Έλž˜λ°μ„ ν•˜λ©΄μ„œ 객체λ₯Ό 생성할 λ•Œ 직접 ν΄λž˜μŠ€μ— new μ—°μ‚°μžλ₯Ό μ΄μš©ν•˜μ—¬ μƒμ„±ν–ˆμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ DIλŠ” κ°œλ°œμžκ°€ 직접 코딩을 ν•˜μ—¬ 객체λ₯Ό μƒμ„±ν•˜λŠ” 것이 μ•„λ‹ˆλΌ, μ»¨ν…Œμ΄λ„ˆκ°€ 이λ₯Ό μƒμ„±μ‹œμΌœ μ£ΌλŠ” κ²ƒμž…λ‹ˆλ‹€. κ·Έλ ‡κ²Œ λœλ‹€λ©΄ μ½”λ“œμ—μ„œ 직접적인 μ—°κ΄€ 관계가 λ°œμƒν•˜μ§€ μ•Šμ•„ 각 ν΄λž˜μŠ€λ“€μ˜ 변경이 μžμœ λ‘œμ›Œ μ§‘λ‹ˆλ‹€...

profile on loading

Loading...