Skip to content

Latest commit

ย 

History

History
16 lines (14 loc) ยท 874 Bytes

File metadata and controls

16 lines (14 loc) ยท 874 Bytes

Aspect-Oriented Programming

  • ๊ด€์  ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ
  • DI๊ฐ€ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ชจ๋“ˆ๊ฐ„ ๊ฒฐํ•ฉ๋„๋ฅผ ๋‚ฎ์ถ˜๋‹ค๋ฉด, AOP๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ „์ฒด์— ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ๋Šฅ์„ ์žฌ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ.
  • OOP์—์„œ ๋ฐ”๋ผ๋ณด๋˜ ๊ด€์ ์„ ๋‹ค๋ฅด๊ฒŒ ํ•ด ๋ถ€๊ฐ€๊ธฐ๋Šฅ์  ์ธก๋ฉด์—์„œ ๋ณด์•˜์„ ๋•Œ ๊ณตํ†ต ์š”์†Œ๋ฅผ ์ถ”์ถœํ•˜๋Š” ๊ฒƒ

OOP vs AOP

  • OOP : ๋น„์ง€๋‹ˆ์Šค ๋กœ์ง์˜ ๋ชจ๋“ˆํ™”
    • ๋ชจ๋“ˆํ™” ๋‹จ์œ„์˜ ํ•ต์‹ฌ์€ ๋น„์ง€๋‹ˆ์Šค ๋กœ์ง
    • ์˜ˆ) A ๋„๋ฉ”์ธ์— ๋Œ€ํ•œ A ์„œ๋น„์Šค, B ๋„๋ฉ”์ธ์— ๋Œ€ํ•œ B ์„œ๋น„์Šค,..
  • AOP : ์ธํ”„๋ผ ํ˜น์€ ๋ถ€๊ฐ€๊ธฐ๋Šฅ์˜ ๋ชจ๋“ˆํ™”
    • ๋Œ€ํ‘œ์  ์˜ˆ) ๋กœ๊น…, ํŠธ๋žœ์žญ์…˜, ๋ณด์•ˆ ๋“ฑ
    • ๊ฐ๊ฐ ๋ชจ๋“ˆ๋“ค์˜ ์ฃผ ๋ชฉ์  ์™ธ ํ•„์š”ํ•œ ๋ถ€๊ฐ€์ ์ธ ๊ธฐ๋Šฅ๋“ค.
    • ์˜ˆ) A ์„œ๋น„์Šค์™€ B ์„œ๋น„์Šค์—์„œ ๊ณตํ†ต์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ๋Šฅ๋“ค.

์ฐธ๊ณ