πŸŸ₯IoC(Inversion of Control)

μ •μ˜

μ œμ–΄μ˜ μ—­μ „ (IoC)λž€ μ†Œν”„νŠΈμ›¨μ–΄ 섀계 원칙 쀑 ν•˜λ‚˜λ‘œ ν”„λ‘œκ·Έλž˜λ°μ— μžˆμ–΄, 객체의 생성 관리 μ±…μž„μ„ κ°œλ°œμžμ—μ„œ 전체 μ—ν”Œλ¦¬μΌ€μ΄μ…˜ λ˜λŠ” ν”„λ ˆμž„μ›Œν¬μ— μœ„μž„ν•˜λŠ” λ””μžμΈ 원칙을 μΌμ»«λŠ”λ‹€.

핡심

IoC의 핡심"μ•„μ΄λ””μ–΄λŠ” "μ–΄λ–»κ²Œ" κ°€ μ•„λ‹ˆλΌ "λˆ„κ°€" 객체의 생성 및 관리 μ±…μž„μ„ 가지냐에 μžˆλ‹€.

즉, μš°λ¦¬λŠ” μ–΄λ–»κ²Œ 객체듀이 μƒμ„±λ˜κ³  κ΄€λ¦¬λ˜λŠ”μ§€ 보닀 λˆ„κ΅¬μ— μ˜ν•΄μ„œ μƒμ„±λ˜κ³  κ΄€λ¦¬λ˜λŠ”μ§€μ— μ΄ˆμ μ„

맞좜 ν•„μš”κ°€ μžˆλ‹€.

μ˜ˆμ‹œ

// Some code
print "enter your name"
read name
print "enter your address"
read address
etc...
store in database

μ‚¬μš©μžκ°€ μž…λ ₯ν•œ λ³€μˆ˜λ₯Ό readλ₯Ό 톡해 λ°›κ³ , μ •ν•΄μ§„ μˆœμ„œμ— 따라 λ§ˆμ§€λ§‰μ— μ‚¬μš©μž 정보λ₯Ό μž…λ ₯ν•˜κ³  데이터 λ² μ΄μŠ€μ— μ €μž₯ν•˜λŠ” μ˜ˆμ‹œ μ½”λ“œλ‹€.

μ•žμ„  μœ„ μ˜ˆμ‹œ μ½”λ“œλŠ” IoC원칙을 μ§€ν‚€μ§€ μ•Šμ€ μ½”λ“œμ΄λ©°

μœ„ μ½”λ“œλŠ” IoC원칙을 μ§€μΌœ ν”νžˆ μš°λ¦¬κ°€ μ‚¬μš©ν•˜λŠ” GUI ( Windowing System)을 예둜 λ“€μˆ˜ μžˆλ‹€.

μ‚¬μš©μžκ°€ filed a에 타이핑 ν–ˆμ„ λ•Œ name을 μ €μž₯ν•œλ‹€. μ—¬κΈ°μ„œ 핡심은 when the user types이닀.

화면에 수 λ§Žμ€ κΈ°λŠ₯듀이 μžˆκ² μ§€λ§Œ ν•΄λ‹Ή κΈ°λŠ₯을 μ–Έμ œ μ‹€ν–‰ν• μ§€λŠ” μ‚¬μš©μžκ°€ κ²°μ •ν•œλ‹€.

Last updated