Topcit

์†Œ์Šค ๊ฒฐํ•ฉ๋„(Source Coupling)

Life Log 2024. 11. 10. 18:00
728x90
๋ฐ˜์‘ํ˜•

๐Ÿ’ก ์†Œ์Šค ๊ฒฐํ•ฉ๋„(Source Coupling)๋ž€?

์†Œ์Šค ๊ฒฐํ•ฉ๋„๋Š” ์†Œํ”„ํŠธ์›จ์–ด ์„ค๊ณ„์—์„œ ์ค‘์š”ํ•œ ๊ฐœ๋…์œผ๋กœ, ๋ชจ๋“ˆ ๊ฐ„์˜ ์˜์กด์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •๋„๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐํ•ฉ๋„๊ฐ€ ๋†’์„์ˆ˜๋ก ๋ชจ๋“ˆ๋“ค์ด ์„œ๋กœ ๋ฐ€์ ‘ํ•˜๊ฒŒ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์–ด, ํ•˜๋‚˜์˜ ๋ชจ๋“ˆ์ด ๋ณ€๊ฒฝ๋˜์—ˆ์„ ๋•Œ ๋‹ค๋ฅธ ๋ชจ๋“ˆ์—๋„ ์˜ํ–ฅ์„ ๋ฏธ์น˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋Œ€๋กœ, ๊ฒฐํ•ฉ๋„๊ฐ€ ๋‚ฎ์„์ˆ˜๋ก ๋ชจ๋“ˆ ๊ฐ„ ๋…๋ฆฝ์„ฑ์ด ์ปค์ ธ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค.


๐Ÿ” ์†Œ์Šค ๊ฒฐํ•ฉ๋„์˜ ์œ ํ˜•

  1. ๋‚ด์šฉ ๊ฒฐํ•ฉ(Content Coupling):

    • ํ•œ ๋ชจ๋“ˆ์ด ๋‹ค๋ฅธ ๋ชจ๋“ˆ์˜ ๋‚ด๋ถ€ ๊ตฌํ˜„ ์„ธ๋ถ€์‚ฌํ•ญ์— ์ง์ ‘ ์ ‘๊ทผํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
    • ๊ฐ€์žฅ ๋†’์€ ๊ฒฐํ•ฉ๋„๋กœ, ์†Œ์Šค ์ฝ”๋“œ์˜ ๋ณ€ํ™”๊ฐ€ ์—ฌ๋Ÿฌ ๋ชจ๋“ˆ์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.
    • ์˜ˆ์‹œ: A ๋ชจ๋“ˆ์ด B ๋ชจ๋“ˆ์˜ ๋‚ด๋ถ€ ๋ณ€์ˆ˜์— ์ง์ ‘ ์ ‘๊ทผํ•˜๋Š” ๊ฒฝ์šฐ.
  2. ๊ณตํ†ต ๊ฒฐํ•ฉ(Common Coupling):

    • ๋ชจ๋“ˆ๋“ค์ด ์ „์—ญ ๋ณ€์ˆ˜๋ฅผ ๊ณต์œ ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตํ™˜ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
    • ์ „์—ญ ๋ณ€์ˆ˜์˜ ์ˆ˜์ •์€ ๋ชจ๋“  ๊ด€๋ จ ๋ชจ๋“ˆ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์˜ˆ์‹œ: ์—ฌ๋Ÿฌ ๋ชจ๋“ˆ์ด ๊ฐ™์€ ์ „์—ญ ์„ค์ • ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ.
  3. ์ œ์–ด ๊ฒฐํ•ฉ(Control Coupling):

    • ํ•œ ๋ชจ๋“ˆ์ด ๋‹ค๋ฅธ ๋ชจ๋“ˆ์˜ ๋™์ž‘์„ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด ์ œ์–ด ์‹ ํ˜ธ๋ฅผ ์ „๋‹ฌํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
    • ์˜ˆ์‹œ: ํ”Œ๋ž˜๊ทธ ๊ฐ’์„ ํ†ตํ•ด ๋‹ค๋ฅธ ๋ชจ๋“ˆ์˜ ๋™์ž‘ ๋ฐฉ์‹์„ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒฝ์šฐ.
  4. ์Šคํƒฌํ”„ ๊ฒฐํ•ฉ(Stamp Coupling):

    • ๋ชจ๋“ˆ ๊ฐ„์— ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๊ฐ€ ์ „๋‹ฌ๋  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
    • ์ „๋‹ฌ๋œ ๋ฐ์ดํ„ฐ์˜ ์ผ๋ถ€๋งŒ ์‚ฌ์šฉ๋˜๋ฉด ํ•„์š” ์ด์ƒ์˜ ๊ฒฐํ•ฉ์ด ์ƒ๊น๋‹ˆ๋‹ค.
    • ์˜ˆ์‹œ: ๊ตฌ์กฐ์ฒด๋‚˜ ๊ฐ์ฒด๋ฅผ ์ „๋‹ฌํ•˜์ง€๋งŒ, ๊ทธ ์ค‘ ์ผ๋ถ€ ํ•„๋“œ๋งŒ ์‚ฌ์šฉ๋˜๋Š” ๊ฒฝ์šฐ.
  5. ์ž๋ฃŒ ๊ฒฐํ•ฉ(Data Coupling):

    • ๋ชจ๋“ˆ ๊ฐ„์— ๋‹จ์ˆœํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตํ™˜ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
    • ๊ฐ€์žฅ ๋‚ฎ์€ ๊ฒฐํ•ฉ๋„๋กœ, ๋…๋ฆฝ์„ฑ์ด ๋†’์•„์ง‘๋‹ˆ๋‹ค.
    • ์˜ˆ์‹œ: ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ ๊ธฐ๋ณธ ํƒ€์ž…์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๊ฒฝ์šฐ.

๐Ÿ›  ๊ฒฐํ•ฉ๋„ ๋‚ฎ์ถ”๊ธฐ

์†Œ์Šค ๊ฒฐํ•ฉ๋„๋ฅผ ๋‚ฎ์ถ”๊ธฐ ์œ„ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

  • ์ธํ„ฐํŽ˜์ด์Šค ์‚ฌ์šฉ: ๋ช…ํ™•ํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ •์˜ํ•˜๊ณ , ๋ชจ๋“ˆ ๊ฐ„์˜ ์˜์กด์„ฑ์„ ์ค„์ž…๋‹ˆ๋‹ค.
  • ์บก์Šํ™”: ๋ชจ๋“ˆ ๋‚ด๋ถ€์˜ ์„ธ๋ถ€ ๊ตฌํ˜„์„ ๊ฐ์ถ”๊ณ , ํ•„์š”ํ•œ ๊ธฐ๋Šฅ๋งŒ ๊ณต๊ฐœํ•ฉ๋‹ˆ๋‹ค.
  • ๋””์ž์ธ ํŒจํ„ด ์ ์šฉ: ์ „๋žต ํŒจํ„ด์ด๋‚˜ ์˜์กด์„ฑ ์ฃผ์ž…(DI) ๊ฐ™์€ ๋””์ž์ธ ํŒจํ„ด์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฒฐํ•ฉ๋„๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ“Œ ๋งˆ๋ฌด๋ฆฌ

์†Œ์Šค ๊ฒฐํ•ฉ๋„๋Š” ์†Œํ”„ํŠธ์›จ์–ด์˜ ํ’ˆ์งˆ์— ์ค‘์š”ํ•œ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. ๊ฒฐํ•ฉ๋„๋ฅผ ๋‚ฎ์ถ”๋ฉด ์ฝ”๋“œ์˜ ์œ ์ง€๋ณด์ˆ˜์„ฑ, ํ™•์žฅ์„ฑ, ํ…Œ์ŠคํŠธ ์šฉ์ด์„ฑ์ด ๋†’์•„์ง‘๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ, ๊ฒฐํ•ฉ๋„๋ฅผ ์ตœ์†Œํ™”ํ•˜๊ณ  ์‘์ง‘๋„๋Š” ๋†’์ด๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ์„ค๊ณ„ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

728x90
๋ฐ˜์‘ํ˜•