[Áöµð³ÝÄÚ¸®¾Æ]¾ç»ç´Â AOP(¿µ¿ªÁöÇâ ÇÁ·Î±×·¡¹Ö : aspect-oriented programming) ¼ÒÇÁÆ®¿þ¾î °³¹ß ±â¼ú¿¡ °¢±â ÅõÀÚ¸¦ ÁøÇà ÁßÀÌ´Ù. AOP´Â ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ßÀ» ´õ ½Å¼ÓÇϰí À¯¿¬ÇÏ°Ô ÇÏ¸é¼ °áÇÔ ºñÀ²À» ÁÙ¿©ÁÖ´Â ±â¼úÀÌ´Ù.
Jº¸½º ±â¾÷ °³¹ß/Àü·«ºÎ¹® ºÎ»çÀåÀÎ ¹ä ºñÄÌÀº ¡°µÎ ȸ»ç ¸ðµÎ AOP¸¦ ÀÚ¹ÙÀÇ Ç¥ÁØ ±â´ÉÀ¸·Î ¸¸µé±â À§ÇØ ³ë·ÂÇϰí ÀÖ´Ù¡±°í ÀüÇß´Ù. Jº¸½º´Â ÃÖ±Ù ÀÚ¹Ù Ä¿¹Â´ÏƼ ÇÁ·Î¼¼½º(JCP)¿¡ °¡´ãÇß´Ù. JCP´Â ÀÚ¹Ù ºí·çÇÁ¸°Æ®¿¡ »õ·Î¿î ±â´ÉÀ» Ãß°¡ÇÏ´Â °ø½ÄÀûÀÎ ±â±¸´Ù.
AOP¸¦ ÀÚ¹Ù ¸í¼¼¿¡ Ãß°¡ÇÏ´Â ÀÏÀº 1³â ÀÌ»ó °É¸± ¼öµµ ÀÖ´Ù. ÇÏÁö¸¸ AOP¸¦ ÅëÇØ Åë»óÀûÀÎ ÀÚ¹Ù °³¹ßÀÚµéÀº ´õ¿í Áøº¸µÈ ÇÁ·Î±×·¡¹Ö ±â¼úÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ±â´ÉÀÌ Á¦Ç°¿¡ Àû¿ëµÈ´Ù¸é ÀÚ¹Ù´Â MS ´å³Ý ºê·£µå °è¿ÀÇ °³¹ß Åø¿¡ ´ëÀÀÇØ ÇÑÃþ ´õ °æÀï·ÂÀ» °®Ãâ ¼ö ÀְԵȴÙ.
Jº¸½º¿Í IBMÀÌ AOP¸¦ ÀÚ¹Ù °³¹ßÀڵ鿡°Ô Æø³Ð°Ô Á¦°øÇϱâ À§ÇØ Ç¥ÁØÈ¿¡ ³ë·ÂÇÏ´Â °ÍÀº »ç½Ç MS°¡ ÀÚ¹ÙÀÇ ¸¹Àº Ư¡À» º» µû °³¹ßÇÑ C# ¾ð¾îÀÇ ¼º°ø¿¡ ÀÚ±ØÀ» ¹Þ¾Ò±â ¶§¹®ÀÌ´Ù. ºñÄÌÀº ¡°MS´Â C#À» ÅëÇØ ¼ö³â°£¿¡ °ÉÃÄ ÀÚ¹Ù¸¦ Ãß¿ùÇÏ·Á ³ë·ÂÇØ¿Ô°í ÀÌÁ¦ °á½ÇÀ» º¸°í ÀÖ´Ù¡±¸ç ¡°Jº¸½º¿Í IBMÀº ÀÚ¹Ù¸¦ ¾Õ¼´Â À̰°Àº C#ÀÇ Àα⿡ À§±âÀǽÄÀ» °ø°¨Çϰí ÀÖ´Ù¡±°í ¸»Çß´Ù.
À̹ø IBM°ú Jº¸½ºÀÇ AOP Ç¥ÁØÈ °èȹ¿¡ °üÇØ MSÃø ÀÔÀåÀº Áï°¢ È®ÀÎÇÒ ¼ö ¾ø¾ú´Ù.
°³¹ß Åø ÆÇ¸Å°¡ »ç½Ç»ó °ü·Ã ¿î¿µÃ¼Á¦³ª ¼¹ö ¼ÒÇÁÆ®¿þ¾î ÆÇ¸Å¿¡ Á¾¼ÓµÇ´Â °æ¿ì°¡ ¸¹Àº »óȲ¿¡¼ MS ºñÁÖ¾ó ½ºÆ©µð¿À ´å³Ý¿¡ ´ëÇ×Çϱâ À§ÇØ ÀÚ¹Ù ¾÷üµéÀº °³¹ßÀÚµéÀÇ »ý»ê¼ºÀ» ³ôÀÌ´Â ÀÏÀ» ÃÖ¿ì¼± °úÁ¦·Î »ï°íÀÖ´Ù.
Jº¸½º ±×·ìÀº ¼¹ö ¼ÒÇÁÆ®¿þ¾îÀÎ ¡®Jº¸½º ÀÚ¹Ù¡¯¸¦ ¹«·á ¹èÆ÷Çϰí ÀÌ¿¡ ´ëÇÑ ¼ºñ½º¸¦ ÆÇ¸ÅÇϰí ÀÖÀ¸¸ç, IBMÀº Áö³ÇØ ¼ö½Ê¾ï´Þ·¯ ±Ô¸ðÀÇ ÀÚ¹Ù ¾ÖÇø®ÄÉÀÌ¼Ç ¼¹ö ¼ÒÇÁÆ®¿þ¾î ½ÃÀå¿¡¼ BEA¸¦ ¾ÕÁú·¶´Ù.
AOP¸¦ ÁöÁöÇÏ´Â »ç¶÷µéÀº AOPÀÇ °¡Àå Å« ÀåÁ¡À» À¯¿¬¼º°ú ´Ü¼ø¼ºÀ̶ó°í ¸»ÇÑ´Ù. AOPÀÇ ±âº»ÀûÀÎ °³³äÀº ÄÄÇ»ÅÍ ÇÁ·Î±×·¥ ³»ºÎÀÇ ¿©·¯ °÷¿¡¼ »ç¿ëµÇ´Â ƯÁ¤ ÇÔ¼ö ÅëÁ¦¸¦ Áß¾Ó ÁýÁßÈÇÔÀ¸·Î½á °³¹ßÀýÂ÷¸¦ ´Ü¼øÈ ½ÃŰ´Â °ÍÀÌ´Ù.
¿¹¸¦ µé¾î °³¹ßÀÚ´Â »ç¶÷µéÀÇ »çÀÌÆ® ¹æ¹®À» ó¸®ÇÏ´Â ¹æ¹ý¿¡ °üÇÑ À¥¼¹ö ±ÔÄ¢À» Áß¾Ó¿¡¼ Á¤ÀÇÇÒ ¼ö ÀÖ´Ù. Áï »çÀÌÆ®¿¡ Á¢¼ÓÇÏ´Â °¢ ¹æ¹®ÀÚº°·Î ÀÌ·¯ÇÑ ±ÔÄ¢À» º¯°æÇÏ·Á¸é ¸¹Àº ºÎºÐÀ» ¼öÁ¤ÇØ¾ß ÇÏÁö¸¸ AOP µµ±¸¸¦ »ç¿ëÇϸé Àüü ½Ã½ºÅÛ¿¡ ´ëÇØ Çѹø¿¡ Á¤Ã¥À» ¹Ù²Ü ¼ö ÀÖ´Ù.
°³¹ßÀÚ´Â ¶ÇÇÑ Æ¯Á¤ ±â´É ¼öÇà¿¡ ´ëÇØ ÀڽŸ¸ÀÇ °íÀ¯ ¡®¿µ¿ª(aspects)¡¯À» ¸¸µé ¼ö ÀÖ´Ù. ¾Ö³Î¸®½ºÆ®µéÀº ƯÈ÷ AOP°¡ ÇöÀç ³Î¸® ¾²À̰í ÀÖ´Â °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö ±â¹ý°ú Àß À¶ÈµÈ´Ù´Â Á¡À» °Á¶ÇÑ´Ù.
ÄÁ¼³ÆÃ ¾÷ü NAS »çÀåÀÎ ·Ð º¸µåŲÀº ¡°AOP¸¦ »ç¿ëÇÏ¸é °³¹ß ¼Óµµµµ ºü¸¦ »Ó ¾Æ´Ï¶ó »ý¼ºµÈ ÄÚµåÀÇ Ç°Áúµµ ³ôÀ» È®·üÀÌ Å©´Ù¡±°í ¸»Çß´Ù.
ÇÑÆí ÀÚ¹Ù ¾÷üµéÀº ÀÚ¹Ù °³¹ß Åø °³¼±¿¡ ÁýÁßÀûÀ¸·Î ÅõÀÚÇϰí ÀÖÀ¸¸ç MS°¡ ºñÁÖ¾ó º£ÀÌÁ÷ Åø¿¡¼ °ÅµÐ ¼º°ø ¹æÁ¤½ÄÀ» µû¶óÇϰí ÀÖ´Ù. ½ÇÁ¦·Î ÀÚ¹Ù¸¦ óÀ½ °³¹ßÇÑ ½ã¸¶ÀÌÅ©·Î½Ã½ºÅÛÀº °³¹ß Åø ¡®ÇÁ·ÎÁ§Æ® ·¹À̺ꡯ¸¦ Ãâ½ÃÇÒ ¿¹Á¤Àε¥ ÀÌ Á¦Ç°Àº ´ë±Ô¸ðÀÇ º¹ÀâÇÑ ±¸Çö º¸´Ù´Â ÁÖ·Î ±â¾÷ÀÇ °¢ ºÎ¼ ´ÜÀ§¿¡¼ »ç¿ëµÇ´Â MS ºñÁÖ¾ó º£ÀÌÁ÷¿¡ Á¤¸éÀ¸·Î ´ëÀÀÇÏ´Â °ÍÀÌ´Ù. BEA´Â ÀÚ¹Ù ¼¹ö ¼ÒÇÁÆ®¿þ¾î ½ÃÀå¿¡¼ÀÇ Á¡À¯À²À» ²ø¾î¿Ã¸®±â À§ÇÑ Àü·«ÀÇ ÇÙ½ÉÀÎ À¥·ÎÁ÷ ¿öÅ©¼¥ 8.1À» Áö³´Þ Ãâ½ÃÇß´Ù.
Æ÷·¹½ºÅÍÀÇ ¾Ö³Î¸®½ºÆ® Á¸ ¸ÞÀ̾î´Â ¡°´Ü±âÀûÀ¸·Î º¼ ¶§ »ç¿ëÀÌ Æí¸®ÇÑ ÅøÀº ÀÚ¹Ù¸¦ ÀÌ¿ëÇÑ °³¹ßÀ» °¡¼ÓȽÃ۰í, ½ÃÀå¿¡¼ ¼º°øÀ» °ÅµÐ MS °³¹ß Åø¿¡ ´ëÇØ¼ ÀÚ¹Ù°¡ °æÀï·ÂÀ» °®Ãâ ¼ö ÀÖµµ·Ï ÇØÁÙ °Í¡±À̶ó°í ¸»Çß´Ù.
±×´Â ÀÌ¾î ¡°ÀÌ ºÐ¾ß´Â Á¡ÁøÀûÀÎ ¼º¼÷È ´Ü°è¸¦ Áö³ª°í ÀÖ´Ù. Àڹ٠ǥÁØ ±â±¸ ½ÂÀÎÀ» ¹ÞÀº È®Àå¾ÈµéÀ» ½ÇÁ¦ °³¹ß Åø ¾÷°è°¡ ¼ö¿ëÇÏ°í »ç¶÷µéÀÌ AOP¸¦ ¹Þ¾ÆµéÀÏ Áغñ°¡ µÇ´Â µ¥´Â ¼ö³âÀÇ ½Ã°£ÀÌ ÇÊ¿äÇÏ´Ù¡±°í ÁöÀûÇß´Ù.
AOP·Î MS Àâ´Â´Ù
ÀÚ¹Ù ¼ÒÇÁÆ®¿þ¾î ¾÷°è´Â AOP¿¡ ÅõÀÚÇϰí ÀÖ´Ù. AOP´Â ¾ÆÁ÷ ÁÖ·ù ÇÁ·Î±×·¡¹Ö ±â¹ý°ú´Â °Å¸®°¡ ÀÖÁö¸¸ Àå±âÀûÀ¸·Î º¼ ¶§ ÀÌ °°Àº Áøº¸Àû ±â¹ýÀº Àü·«Àû °¡Ä¡°¡ ÀÖ´Ù´Â °ÍÀÌ °ü·Ã¾÷üµéÀÇ ÆÇ´ÜÀÌ´Ù.
BEA´Â Áö³´Þ ÀÚ¹Ù °³¹ßÀÚµéÀÌ ÀÚ»ç À¥·ÎÁ÷ Åø°ú ¼¹ö ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÌ¿ëÇØ AOP ±â¹ýÀ» ½ÃÇèÇØ º¼ ¼ö ÀÖ´Â WAF(WebLogic Aspect Framework)¸¦ ¼±º¸¿´´Ù.
IBM ¸®¼Ä¡´Â AOP ¿Ü¿¡µµ ÇÏÀÌÆÛJ¿Í °°Àº »õ·Î¿î °³³äµé¿¡ ÅõÀÚÇß´Ù. IBMÀº ¶ÇÇÑ ¡®¾Ö½ºÆåÆ®J¡¯ °³¹ß¿¡µµ °ü¿©Çϰí ÀÖ´Ù. AOP ±â¼ú°ú ¿¬°èµÇ´Â ¾Ö½ºÆåÆ®J´Â ÇöÀç ÀÌŬ¸³½º ¿ÀǼҽº °³¹ß Åø ÇÁ·ÎÁ§Æ® ³»¿¡¼ °³¹ßÁßÀÌ´Ù. ¾Ö½ºÆåÆ®J´Â Á¦·Ï½º ÆÄÅ© ¿¬±¸¼Ò¿¡¼ óÀ½ °³¹ßµÆÀ¸¸ç ¿ÃÇØÃÊ ÀÌŬ¸³½º°¡ ³Ñ°Ü ¹Þ¾Ò´Ù.
¿ÀǼҽº ÇÁ·ÎÁ§Æ®ÀÎ ¾Ö½ºÆåÆ® ¿÷Áî(
aspectwerkz.codehaus.org)µµ ÀÚ¹Ù ±â¹ÝÀÇ ¿µ¿ªÁöÇâ ÇÁ·¹ÀÓ¿öÅ©´Ù.
ÀÌó·³ ÀÚ¹Ù Åø ¾÷üµéÀÌ MS¿Í °æÀïÇϱâ À§ÇØ AOP¿¡ ÅõÀÚÇϰí ÀÖ´Â °¡¿îµ¥ MSµµ ³ª¸§´ë·Î °èȹÀÌ ÀÖ´Ù.
ÀüÁ÷ MS ÀÓ¿ø Âû½º ½Ã¸ð´Ï°¡ Áö³ÇØ ¼³¸³ÇÑ º¥Ã³±â¾÷ ÀÎÅټųΠ¼ÒÇÁÆ®¿þ¾î(
intentsoft.com)´Â ÇöÀç ¿µ¿ªÁöÇâ¿¡ °üÇÑ °³³äÀ» Á¤¸®Çϰí ÀÖÀ¸¸ç »ó¿ë Á¦Ç° °³¹ßµµ ÁøÇàÇϰí ÀÖ´Ù. ½Ã¸ð´Ï´Â MS ÀçÁ÷´ç½Ã ¿µ¿ªÁöÇâ ÇÁ·Î±×·¡¹Ö°ú °ü·ÃµÈ °³³äÀÎ ¡®ÀÎÅټųΠÇÁ·Î±×·¡¹Ö¡¯¿¡ °üÇØ ¿¬±¸ÇؿԴÙ. ÀÎÅټųΠ¼ÒÇÁÆ®¿þ¾î´Â ÀÌ¹Ì MS¿Í ¶óÀ̼±½Ì °è¾àÀ» ü°á, »õ·Î °³¹ßµÈ ¸ðµç Á¦Ç°¿¡ ´ëÇØ MS°¡ ÃÖÃÊ Çù»ó±ÇÀ» °¡Áú ¼ö ÀÖµµ·Ï Çß´Ù.
±â¼ú ºÐ¾ß¿¡ Åë´ÞÇÑ Jº¸½º ¼³¸³ÀÎ ¸¶Å© Ç÷¯¸®´Â ¡°MS°¡ ¸¶ÄÉÆÃ¿¡¼ AOP¶ó´Â ¿ë¾î¸¦ »ç¿ëÇÏÁö´Â ¾ÊÁö¸¸ MS ´å³Ý ÇÁ·¹ÀÓ¿öÅ©´Â AOP ±â¹ýÀ» ¸¹ÀÌ ¸ð¹æÇϰí ÀÖ´Ù¡±°í ÁÖÀåÇß´Ù.
±×´Â ÀÌ¾î ¡°¿ì¸®´Â Jº¸½º 4.0 ¹öÀü¿¡¼ µµÀÔÇÑ ¿µ¿ªÁöÇâ ÇÁ·¹ÀÓ¿öÅ©¿¡¼ ºñÁÖ¾ó º£ÀÌÁ÷ ´å³ÝÀÇ ¡®°³¹ß ¿ëÀ̼º¡¯À» µû¶óÀâÀ¸·Á Çß´Ù¡±°í ¸»Çß´Ù. ºñÁÖ¾ó º£ÀÌÁ÷ ´å³Ý¿¡¼´Â Æ®·£Àè¼ÇÀ̳ª ij½Ì°ú °°ÀÌ ³ÇØÇÑ ÇÁ·Î±×·¡¹Ö ÀÛ¾÷ÀÌ °£´ÜÇÑ ÅÂ±× »ç¿ëÀ¸·Î ´ëüµÇ±â ¶§¹®¿¡ °³¹ßÀÚµéÀÌ ÀÏÀÏÀÌ µé¿©´Ù º¼ Çʿ䰡 ¾ø´Ù.
º¸µåŲÀº ¾ÆÁ÷ ½ÇÇè´Ü°èÀ̱ä Çϳª »ó¿ë ½Ã½ºÅÛ¿¡¼ÀÇ AOP ¼ö¿ëÀ» ³«°üÇϰí ÀÖ´Ù. ±×´Â ¡°¾î·Á¿î J2EE ½Ã½ºÅÛ ÇÁ·Î±×·¡¹ÖÀÌ ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß °úÁ¤À» ´ÊÃß°í µû¶ó¼ ±â¾÷ ³»ºÎÀÇ ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß ¿äûÀÌ ÀûüµÇ´Â °á°ú¸¦ ÃÊ·¡ÇÑ´Ù¡±¸ç ¡°ÀÌ·¯ÇÑ ¿ä¼Ò°¡ AOP ¼ö¿ëÀ» ÃËÁø½Ãų ¼ö ÀÖ´Ù¡±°í ÁÖÀåÇß´Ù.
ÇÏÁö¸¸ AOP°¡ º¸ÆíÈ µÇ±â±îÁö´Â ¸¹Àº ³°üÀÌ ÀÖ´Ù. ¾Ö½ºÆåÆ®J ¾ð¾î°¡ ÀÚ¹Ù È®ÀåÀ̶ó°í ÇØµµ °³¹ßÀÚµéÀº »õ·Î¿î ±â¹ý¿¡ ´ëÇÑ ÈÆ·ÃÀÌ ÇÊ¿äÇÏ´Ù. ¶Ç ¾÷°è´Â AOP ÅøÀÇ ±¸¼º¿ä¼Ò¿Í ±â¼ú ÁøÇà¹æÇâ¿¡ ÀÖ¾î¼ ¸íÈ®ÇÑ ÇÕÀÇ¿¡ À̸£Áö ¸øÇÑ »óȲÀ̶ó°í º¸µåŲÀº ÁöÀûÇß´Ù.
±×´Â ¡°°´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹ÖÀÇ ÃÊâ±â »óȲ°ú ºñ½ÁÇÏ´Ù. ´ç½Ã¿¡µµ °´Ã¼ÁöÇâÀÌ ¾î¶»°Ô ³ª¾Æ°¡¾ß ÇÏ´ÂÁö¿¡ °üÇØ ¼·Î ´Ù¸¥ »ý°¢µéÀÌ ÀÖ¾ú´Ù"¸ç "ÀÌ·¯ÇÑ ¹®Á¦´Â Ç¥ÁØÈ¸¦ ÅëÇØ ÇØ°áÀÌ µÉ °ÍÀÌ´Ù. ±× ½Ã°£µ¿¾ÈÀº ¿ÀǼҽº Ãø¿¡¼ °³¹ßÀڵ鿡°Ô ¹«¾ð°¡ À¯¿ëÇÑ °ÍÀ» Á¦°øÇÒ ¼ö ÀÖÀ» °Í¡±À̶ó°í ¸»Çß´Ù. @