±¹³»µµ¼
±¹³»µµ¼
¿Ü±¹µµ¼
À½¹Ý¡¤DVD
>
Àü°øµµ¼/´ëÇб³Àç
°¡Á¤°ú »ýÈ°
°Ç° / ºäƼ
°æÁ¦°æ¿µ
|
ÀÚ±â°è¹ß
±¹¾î¿Í ¿Ü±¹¾î
¸¸È
|
ÀâÁö
¼Ò¼³
ºñ¼Ò¼³/¹®ÇзÐ
Àι®
|
Á¾±³/¿ªÇÐ
À¯¾Æ
|
¾Æµ¿
¿©Çà
|
Ãë¹Ì/·¹Àú
¿¹¼ú°ú ´ëÁß¹®È
¿ª»ç¿Í ¹®È
»çȸ°úÇÐ
|
ÀÚ¿¬°ú °úÇÐ
û¼Ò³â
ÃʵîÇнÀ¼
Áß°íµîÇнÀ¼
Àڰݼ/¼öÇè¼
»çÀü/¿¬°¨
Àü°øµµ¼/´ëÇб³Àç
ÇØ¿Ü¿ø¼
¼ºÀεµ¼
|
¾×¼¼¼¸®
>
°øÇаè¿
°æ»ó°è¿
°øÇаè¿
»ýȰȯ°æ°è¿
¿¹Ã¼´É°è¿
¾î¹®Çаè¿
ÀÚ¿¬°úÇаè¿
ÀǾàÇа£È£°è¿
³óÃà»ê»ý¸í°è¿
¹ýÇаè¿
»ç¹ü°è¿
»çȸ°úÇаè¿
Àι®°è¿
´ëÇб³ÃâÆǺÎ
¹æ¼Û´ë ±³Àç
Á¤ºÎ°£Ç๰
°è¿º°·Îº¸±â
>
ÄÄÇ»ÅÍ°øÇÐ
°ÇÃàÇÐ
±âŸ
¼¶À¯°øÇÐ
Àü±âÀüÀÚ°øÇÐ
ÄÄÇ»ÅÍ°øÇÐ
Åä¸ñ°øÇÐ
ȯ°æÇÐ/ȯ°æ°øÇÐ
È°ø/±Ý¼Ó/Àç·á°øÇÐ
¿ìÁÖ/¿øÀÚ/Á¶¼±/Ç×°ø
±â¼ú°øÇÐ
µµ½Ã°øÇÐ
¼Ò¹æ°øÇÐ
ÀÚµ¿Â÷°øÇÐ
Ç¥ÁØ Ç°¼À
±â°è°øÇÐ
µµ¸ÞÀÎ ÁÖµµ ¼³°è ±¸Çö(Implementing Domain-Driven Design)
¿¡ÀÌÄÜ ¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØó ½Ã¸®Áî1 ¤Ó ¹Ý ¹ö³í, À±Ã¢¼®, Ȳ¿¹Áø ¤Ó ¿¡ÀÌÄÜÃâÆÇ ¤Ó Implementing Domain-Driven Design
Á¤°¡
45,000¿ø
ÆǸŰ¡
40,500¿ø
(10% ¡é, 4,500¿ø ¡é)
¹ßÇàÀÏ
2016³â 04¿ù 07ÀÏ
½Å/±¸°£¿¡ µû¸¥ µµ¼ ÇÒÀÎÀ²
1. ½Å°£ : ¹ßÇàÀÏÀÌ 1³â 6°³¿ù À̳»
- ÃÖ´ë 10% ÇÒÀÎ Àû¿ë °¡´É
- ¿Ü±¹µµ¼/ÇØ¿ÜÁÖ¹®¿ø¼/¾î¸°ÀÌ CD, VIDEO/Áß°íÀüÁý/¾îÇÐ CD, VIDEO´Â Á¦¿Ü
2. ±¸°£ : ¹ßÇàÀÏÀÌ 1³â 6°³¿ù ÀÌÀü
- °ø±Þ¾÷üÀÇ ±¸°£ ÇÒÀÎÀ²ÀÌ ÀÖ´Â °æ¿ì ±¸°£ ÇÒÀÎÀ² °ªÀÌ Àû¿ë
- °ø±Þ¾÷üÀÇ ±¸°£ ÇÒÀÎÀ²ÀÌ ¾ø´Â °æ¿ì 10%·Î Àû¿ë
ÆäÀÌÁö¼ö/Å©±â/¹«°Ô
748page/188*250*36/1490g
ISBN
9788960778429/8960778427
¹è¼Ûºñ
¹«·á¹è¼Û
¹è¼Û¿¹Á¤ÀÏ
04/29(¿ù) ¹è¼Û¿Ï·á¿¹Á¤
Çö º¸À¯Àç°í
100 ±Ç ÀÌ»ó
ÁÖ¹®¼ö·®
±Ç
»óÇ°/°¡°ÝÁ¤º¸
ÀÔ°í/Ç°Àý/ÀýÆÇ
°ü·ÃÀ̺¥Æ®
ÇÒÀÎÄíÆù
ºÏ¸¶½ºÅͼҰ³±Û
|
ÃâÆÇ»ç¼Æò
|
¸ñÂ÷
|
ÀúÀÚ¼Ò°³
|
±¸¸ÅÈıâ
Á¦ÈÞ¸ô ÁÖ¹® ½Ã °í°´º¸»ó, ÀϺΠÀ̺¥Æ® Âü¿© ¹× ÁõÁ¤Ç° ÁõÁ¤, ÇÏ·ç/´çÀÏ ¹è¼Û¿¡¼ Á¦¿ÜµÇ¹Ç·Î Âü°í ¹Ù¶ø´Ï´Ù.
µµ¼
>
Àü°øµµ¼/´ëÇб³Àç
>
°øÇаè¿
>
ÄÄÇ»ÅÍ°øÇÐ
¿¡ÀÌÄÜ ¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØó ½Ã¸®Áî
(ÃÑ21°Ç)
Àκ£½ºÆ®¸ÕÆ® ¾ð¸®¹ÌƼµå
: °¡»óÀÇ ±ÝÀ¶ ±â¾÷À» ÅëÇØ ÀÌÇØÇÏ´Â DevSecOps¿Í IT °Å¹ö³Í½º
19,800¿ø (10%¡é)
¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØÆ® ¿¤¸®º£ÀÌÅÍ
: µðÁöÅÐ ±â¾÷ ȯ°æ¿¡¼ÀÇ ¾ÆÅ°ÅØÆ®
31,500¿ø (10%¡é)
OPA ½ÃÀÛÇϱâ
: Ŭ¶ó¿ìµå ³×ÀÌƼºê ¾ÖÇø®ÄÉÀ̼ǰú ¸¶ÀÌÅ©·Î¼ºñ½º¸¦ À§ÇÑ Á¤Ã¥, ±ÇÇÑ ¿£Áø
29,700¿ø (10%¡é)
Great Code Vol 3
: °³¹ßÀÚ´Â ¾î¶»°Ô ¼ÒÇÁÆ®¿þ¾î¸¦ ¿Ï¼ºÇϴ°¡
31,500¿ø (10%¡é)
Great Code Vol 2
: ·Î¿ì·¹º§·Î »ý°¢ÇÏ°í ÇÏÀÌ·¹º§·Î ÄÚµùÇϱâ
40,500¿ø (10%¡é)
Great Code Vol 1
: À§´ëÇÑ ÄÚµåÀÇ ½ÃÀÛ ÄÄÇ»Æà ¸Ó½ÅÀÇ ÀÌÇØ
36,000¿ø (10%¡é)
µ¥ºê¿É½º¸¦ ÁöÅÊÇϴ Ŭ¶ó¿ìµå ³×ÀÌƼºê ÀÔ¹®
: Äí¹ö³×Ƽ½º¿Í ÇÁ·Î¸ÞÅ׿콺¸¦ ÀÌ¿ëÇÑ ¸¶ÀÌÅ©·Î¼ºñ½º ȯ°æ ±¸Ãà°ú ¹èÆ÷
27,000¿ø (10%¡é)
µ¥ÀÌÅͺ£À̽º ¼³°è¿Í °ü°èÇü ÀÌ·Ð
: Á¤±ÔÈ¿Í Å»Á¤±Ôȸ¦ Áß½ÉÀ¸·Î
36,000¿ø (10%¡é)
µ¥ºê¿É½º µµÀÔ Àü·«
: ±â¾÷ »óȲ¿¡ µû¶ó Àû¿ëÇÏ´Â µ¥ºê¿É½º µµÀÔ ¹æ¹ý
31,500¿ø (10%¡é)
ÆÄÀ̽ãÀ» È°¿ëÇÑ ¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØó
: °ß°íÇÏ°í È®Àå °¡´ÉÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç ¾ÆÅ°ÅØó ¼³°è
36,000¿ø (10%¡é)
½ºÇÁ¸µÀ¸·Î ÇÏ´Â ¸¶ÀÌÅ©·Î¼ºñ½º ±¸Ãà
: ½ºÇÁ¸µ ºÎÆ®¿Í ½ºÇÁ¸µ Ŭ¶ó¿ìµå¸¦ ÀÌ¿ëÇÑ µµÄ¿/Äí¹ö³×Ƽ½º ¸¶ÀÌÅ©·Î¼ºñ½º
36,000¿ø (10%¡é)
¸¶ÀÌÅ©·Î¼ºñ½º
: À¯¿¬ÇÏ°í È®Àå °¡´ÉÇÑ ¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØó
31,500¿ø (10%¡é)
Azure¿Í µµÄ¿¸¦ È°¿ëÇÑ ¸¶ÀÌÅ©·Î¼ºñ½º ±¸Çö
: Azure¿¡¼ ¸¶ÀÌÅ©·Î¼ºñ½º¸¦ ¸¸µå´Â µ¥ ÇÊ¿äÇÑ ±â¼úÀÇ ÀÌÇØ¿Í È°¿ë
27,000¿ø (10%¡é)
Äí¹ö³×Ƽ½º, ÄÁÅ×ÀÌ³Ê °ü¸®ÀÇ Á¤¼®
: ´Ü°èº° ¿¹Á¦·Î ¹è¿ì´Â °í°¡¿ë¼º Ŭ·¯½ºÅÍ ±¸Ãà
36,000¿ø (10%¡é)
ÆÄÀ̽㠸¶ÀÌÅ©·Î¼ºñ½º
: ¸ð¹ü »ç·Ê·Î ¾Ë¾Æº¸´Â ÆÄÀ̽㠸¶ÀÌÅ©·Î¼ºñ½º °³¹ß, Å×½ºÆ®,¹èÆ÷, È®Àå±îÁö
31,500¿ø (10%¡é)
¸¶ÀÌÅ©·Î¼ºñ½º ±¸Ãà°ú ¿î¿µ
: Ç¥ÁØÈ ½Ã½ºÅÛ ±¸ÃàÀ¸·Î ¼ºñ½º »ý»ê°ú ¿î¿µ ÁغñÇϱâ
18,000¿ø (10%¡é)
Äí¹ö³×Ƽ½º·Î ¸¸³ª´Â ¼Õ¾ÈÀÇ ¸¶ÀÌÅ©·Î¼ºñ½º
: ¸¶ÀÌÅ©·Î¼ºñ½º ±¸Ãà, ¹èÆ÷, °ü¸®±îÁö
36,000¿ø (10%¡é)
µµ¸ÞÀÎ ÁÖµµ ¼³°è ±¸Çö(Implementing Domain-Driven Design)
40,500¿ø (10%¡é)
¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØó ¹®¼È
40,500¿ø (10%¡é)
µµ¸ÞÀÎ ÁÖµµ ¼³°è ÇÙ½É
: ÇÙ½ÉÀ» °£Ã߸° ºñÁî´Ï½º Áß½ÉÀÇ ¼³°è·Î ¼ÒÇÁÆ®¿þ¾î °³¹ß ÇÁ·ÎÁ§Æ® ¼º°øÇϱâ
22,500¿ø (10%¡é)
¿£ÅÍÇÁ¶óÀÌÁî ȯ°æÀ» À§ÇÑ ¸¶ÀÌÅ©·Î¼ºñ½º
: ¸¶ÀÌÅ©·Î¼ºñ½º ¾ÆÅ°ÅØóÀÇ °³³ä ÀÌÇغÎÅÍ Àû¿ë, ±¸Çö±îÁö
31,500¿ø (10%¡é)
¿¡ÀÌÄÜ ¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØó ½Ã¸®Áî
(ÃÑ20°Ç)
¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØÆ® ¿¤¸®º£ÀÌÅÍ
: µðÁöÅÐ ±â¾÷ ȯ°æ¿¡¼ÀÇ ¾ÆÅ°ÅØÆ®
31,500¿ø (10%¡é)
OPA ½ÃÀÛÇϱâ
: Ŭ¶ó¿ìµå ³×ÀÌƼºê ¾ÖÇø®ÄÉÀ̼ǰú ¸¶ÀÌÅ©·Î¼ºñ½º¸¦ À§ÇÑ Á¤Ã¥, ±ÇÇÑ ¿£Áø
29,700¿ø (10%¡é)
Great Code Vol 3
: °³¹ßÀÚ´Â ¾î¶»°Ô ¼ÒÇÁÆ®¿þ¾î¸¦ ¿Ï¼ºÇϴ°¡
31,500¿ø (10%¡é)
Great Code Vol 2
: ·Î¿ì·¹º§·Î »ý°¢ÇÏ°í ÇÏÀÌ·¹º§·Î ÄÚµùÇϱâ
40,500¿ø (10%¡é)
Great Code Vol 1
: À§´ëÇÑ ÄÚµåÀÇ ½ÃÀÛ ÄÄÇ»Æà ¸Ó½ÅÀÇ ÀÌÇØ
36,000¿ø (10%¡é)
µ¥ºê¿É½º¸¦ ÁöÅÊÇϴ Ŭ¶ó¿ìµå ³×ÀÌƼºê ÀÔ¹®
: Äí¹ö³×Ƽ½º¿Í ÇÁ·Î¸ÞÅ׿콺¸¦ ÀÌ¿ëÇÑ ¸¶ÀÌÅ©·Î¼ºñ½º ȯ°æ ±¸Ãà°ú ¹èÆ÷
27,000¿ø (10%¡é)
µ¥ÀÌÅͺ£À̽º ¼³°è¿Í °ü°èÇü ÀÌ·Ð
: Á¤±ÔÈ¿Í Å»Á¤±Ôȸ¦ Áß½ÉÀ¸·Î
36,000¿ø (10%¡é)
µ¥ºê¿É½º µµÀÔ Àü·«
: ±â¾÷ »óȲ¿¡ µû¶ó Àû¿ëÇÏ´Â µ¥ºê¿É½º µµÀÔ ¹æ¹ý
31,500¿ø (10%¡é)
ÆÄÀ̽ãÀ» È°¿ëÇÑ ¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØó
: °ß°íÇÏ°í È®Àå °¡´ÉÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç ¾ÆÅ°ÅØó ¼³°è
36,000¿ø (10%¡é)
½ºÇÁ¸µÀ¸·Î ÇÏ´Â ¸¶ÀÌÅ©·Î¼ºñ½º ±¸Ãà
: ½ºÇÁ¸µ ºÎÆ®¿Í ½ºÇÁ¸µ Ŭ¶ó¿ìµå¸¦ ÀÌ¿ëÇÑ µµÄ¿/Äí¹ö³×Ƽ½º ¸¶ÀÌÅ©·Î¼ºñ½º
36,000¿ø (10%¡é)
¸¶ÀÌÅ©·Î¼ºñ½º
: À¯¿¬ÇÏ°í È®Àå °¡´ÉÇÑ ¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØó
31,500¿ø (10%¡é)
Azure¿Í µµÄ¿¸¦ È°¿ëÇÑ ¸¶ÀÌÅ©·Î¼ºñ½º ±¸Çö
: Azure¿¡¼ ¸¶ÀÌÅ©·Î¼ºñ½º¸¦ ¸¸µå´Â µ¥ ÇÊ¿äÇÑ ±â¼úÀÇ ÀÌÇØ¿Í È°¿ë
27,000¿ø (10%¡é)
Äí¹ö³×Ƽ½º, ÄÁÅ×ÀÌ³Ê °ü¸®ÀÇ Á¤¼®
: ´Ü°èº° ¿¹Á¦·Î ¹è¿ì´Â °í°¡¿ë¼º Ŭ·¯½ºÅÍ ±¸Ãà
36,000¿ø (10%¡é)
ÆÄÀ̽㠸¶ÀÌÅ©·Î¼ºñ½º
: ¸ð¹ü »ç·Ê·Î ¾Ë¾Æº¸´Â ÆÄÀ̽㠸¶ÀÌÅ©·Î¼ºñ½º °³¹ß, Å×½ºÆ®,¹èÆ÷, È®Àå±îÁö
31,500¿ø (10%¡é)
¸¶ÀÌÅ©·Î¼ºñ½º ±¸Ãà°ú ¿î¿µ
: Ç¥ÁØÈ ½Ã½ºÅÛ ±¸ÃàÀ¸·Î ¼ºñ½º »ý»ê°ú ¿î¿µ ÁغñÇϱâ
18,000¿ø (10%¡é)
Äí¹ö³×Ƽ½º·Î ¸¸³ª´Â ¼Õ¾ÈÀÇ ¸¶ÀÌÅ©·Î¼ºñ½º
: ¸¶ÀÌÅ©·Î¼ºñ½º ±¸Ãà, ¹èÆ÷, °ü¸®±îÁö
36,000¿ø (10%¡é)
µµ¸ÞÀÎ ÁÖµµ ¼³°è ±¸Çö(Implementing Domain-Driven Design)
40,500¿ø (10%¡é)
¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØó ¹®¼È
40,500¿ø (10%¡é)
µµ¸ÞÀÎ ÁÖµµ ¼³°è ÇÙ½É
: ÇÙ½ÉÀ» °£Ã߸° ºñÁî´Ï½º Áß½ÉÀÇ ¼³°è·Î ¼ÒÇÁÆ®¿þ¾î °³¹ß ÇÁ·ÎÁ§Æ® ¼º°øÇϱâ
22,500¿ø (10%¡é)
¿£ÅÍÇÁ¶óÀÌÁî ȯ°æÀ» À§ÇÑ ¸¶ÀÌÅ©·Î¼ºñ½º
: ¸¶ÀÌÅ©·Î¼ºñ½º ¾ÆÅ°ÅØóÀÇ °³³ä ÀÌÇغÎÅÍ Àû¿ë, ±¸Çö±îÁö
31,500¿ø (10%¡é)
[µµ¸ÞÀÎ ÁÖµµ ¼³°è ±¸Çö]Àº µµ¸ÞÀÎ ÁÖµµ ¼³°è¸¦ ÅëÇØ ¿£ÅÍÇÁ¶óÀÌÁî ¾ÖÇø®ÄÉÀ̼ÇÀ» ±¸ÃàÇÏ´Â ¹æ¹ýÀ» dzºÎÇÑ ±¸Çö ¿¹Á¦¸¦ ÅëÇØ ±¸Ã¼ÀûÀ¸·Î ¼³¸íÇÑ´Ù. ½ºÇÁ¸µ, REST, NoSQL µîÀ» È°¿ëÇØ µµ¸ÞÀÎ ¸ðµ¨À» Áß½ÉÀ¸·Î ¿Ã¹Ù¸¥ ¼ÒÇÁÆ®¿þ¾î ±¸Á¶¸¦ ¸¸µé¾î°¡´Â °úÁ¤À» º¸¿©ÁÖ¸ç, CQRS¿Í À̺¥Æ® ¼Ò½Ì µîÀ» È°¿ëÇØ µµ¸ÞÀÎ ÁÖµµ ¼³°è¸¦ ±¸ÇöÇÏ´Â ½Ç¿ëÀû ¹æ¹ýÀ» ´Ù·é´Ù. ±×µ¿¾È µµ¸ÞÀÎ ÁÖµµ ¼³°è¸¦ ÇÁ·ÎÁ§Æ®¿¡ Àû¿ëÇÏ´Â °úÁ¤¿¡¼ ¾î·Á¿òÀ» °Þ¾ú´ø °³¹ßÀÚ¿¡°Ô µµ¿òÀÌ µÉ °ÍÀÌ´Ù.
¡Ú ÀÌ Ã¥¿¡ ½ñ¾ÆÁø Âù»ç ¡Ú
"¹Ý(Vaughn)Àº ÀÌ Ã¥À» ÅëÇØ ¹®ÇåÀû Ãø¸é¿¡¼ µµ¸ÞÀÎ ÁÖµµ ¼³°è Ä¿¹Â´ÏƼ¿¡ ±â¿©ÇßÀ» »Ó¸¸ ¾Æ´Ï¶ó, ´õ ³ÐÀº ¿£ÅÍÇÁ¶óÀÌÁî ¾ÖÇø®ÄÉÀÌ¼Ç ¾ÆÅ°ÅØó ºÐ¾ß¿¡ Áß¿äÇÑ ±â¿©¸¦ ÇÏ°Ô µÆ´Ù. ¿¹¸¦ µé¾î ¹ÝÀº ¾ÆÅ°ÅØó¿Í ¸®ÆÄÁöÅ丮¿¡ °üÇÑ ÇÙ½É Àå¿¡¼ ¿¡¸¯ ¿¡¹Ý½º(Eric Evans)ÀÇ ±â³äºñÀûÀΠåÀÌ Ã³À½ ¹ß°£µÈ ÀÌÈÄÀÇ 10³â°£ ¶°¿À¸¥ ¿£ÅÍÇÁ¶óÀÌÁî ¾ÖÇø®ÄÉÀ̼ÇÀ» À§ÇÑ ¿©·¯ ¾ÆÅ°ÅØó ½ºÅ¸ÀÏ°ú ¿µ¼Ó¼º ±â¼ú(SOA, REST, NoSQL µ¥ÀÌÅÍ ±×¸®µå µî)ÀÌ ¾î¶»°Ô DDD¿Í ÇÔ²² »ç¿ëµÉ ¼ö ÀÖ´ÂÁö º¸¿©ÁØ´Ù. ¶ÇÇÑ ¹ÝÀº ¼ö¸¹Àº ¿¹Á¦¿Í ¼ö½Ê ³â µ¿¾ÈÀÇ ½ÇÁ¦ °æÇè¿¡¼ ¿ì·¯³ª¿Â ±ÍÁßÇÑ ÅëÂû·ÂÀ» ¹ÙÅÁÀ¸·Î DDDÀÇ °¡·Î¸·Àº À庮(¿£ÅÍƼ(entity), °ª °´Ã¼(value object), ¾Ö±×¸®°ÔÀÕ(aggregate), ¼ºñ½º(service), À̺¥Æ®(event), ÆÑÅ丮(factory), ¸®ÆÄÁöÅ丮(repository) µîÀÇ ±¸Çö)À» ¶Ù¾î³Ñ´Â ¿Ã¹Ù¸¥ ¹æ¹ýÀ» ¾Ë·ÁÁØ´Ù. ÇѸ¶µð·Î ³ª´Â ÀÌ Ã¥À» ºóÆ´¾øÀÌ ¿Ïº®ÇÏ´Ù°í ¸»ÇÏ°í ½Í´Ù. ½º½º·Î¸¦ ¹ßÀü½ÃÅ°°íÀÚ Çϸç ÇöÀç ¼±ÅÃÇÒ ¼ö ÀÖ´Â ÃÖ¼±ÀÇ Àü¹®Àû »ç·Ê¸¦ ±â¹ÝÀ¸·Î µµ¸ÞÀÎ ÁÖµµ ¿£ÅÍÇÁ¶óÀÌÁî ¾ÖÇø®ÄÉÀ̼ÇÀ» ¼³°èÇÏ°í °³¹ßÇÏ°íÀÚ ÇÏ´Â ¸ðµç ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚ¿¡°Ô, Áö³ ¼ö½Ê ³â »çÀÌ¿¡ DDD Ä¿¹Â´ÏƼ¿Í ¿£ÅÍÇÁ¶óÀÌÁî ¾ÖÇø®ÄÉÀÌ¼Ç ¾ÆÅ°ÅØó Ä¿¹Â´ÏƼ°¡ ¾î·Æ°Ô ¾òÀº º¸¼®°°ÀÌ ±ÍÁßÇÑ Áö½ÄÀ» ÀüÇØÁÙ °ÍÀÌ´Ù." -·£µð ½ºÅÂÆ÷µå(Randy Stafford) / ¿À¶óŬ ÄÚÈ÷·±½º(Oracle Coherence) Á¦Ç° °³¹ß ÃÑ°ý ¾ÆÅ°ÅØÆ® "µµ¸ÞÀÎ ÁÖµµ ¼³°è¿¡´Â ÆÀÀÌ ¼ÒÇÁÆ®¿þ¾î Áß½ÉÀÇ ½Ã½ºÅÛÀ» ±¸ÃàÇÒ ¶§, È¿À²¼ºÀ» ³ôÀÌ´Â µ¥ ¾öû³ ¿µÇâÀ» ¹ÌÄ£ °·ÂÇÑ »ý°¢ÀÇ µµ±¸°¡ ¸ð¿© ÀÖ´Ù. »ç½Ç ¸¹Àº °³¹ßÀÚ°¡ ÀÌ·± »ý°¢ÀÇ µµ±¸¸¦ Àû¿ëÇÏ´Â µ¥ ¾î·Á¿òÀ» °Þ¾ú°í, Á» ´õ ±¸Ã¼ÀûÀÎ °¡À̵å¶óÀÎÀ» ÇÊ¿ä·Î Çß¾ú´Ù. ¹ÝÀº ÀÌ Ã¥¿¡¼ À̷аú ½ÇÁ¦ »çÀÌÀÇ ÀÒ¾î¹ö¸° °í¸®¸¦ ã¾ÆÁØ´Ù. ¶ÇÇÑ ¹ÝÀº À߸ø ÀÌÇصŠ¿Â ¿©·¯ DDDÀÇ ¿ä¼Ò¿¡ ºûÀ» ºñÃâ »Ó¸¸ ¾Æ´Ï¶ó, ¸¹Àº DDD Àü¹®°¡°¡ Àû¿ëÇØ ¾öû³ ¼º°øÀ» °ÅµÐ Ä¿¸Çµå/Äõ¸® Ã¥ÀÓ ºÐ¸®¿Í À̺¥Æ® ¼Ò½Ì°ú °°Àº »õ·Î¿î °³³äÀ» ¿¬°áÇØÁÖ°í ÀÖ´Ù. ÀÌ Ã¥Àº DDD¸¦ Çö¾÷¿¡¼ »ç¿ëÇغ¸°íÀÚ ÇÏ´Â ¸ðµç ÀÌ°¡ ¹Ýµå½Ã Àоî¾ß ÇÒ Ã¥ÀÌ´Ù." -¿ìµð ´ÙÇÑ(Udi Dahan) / N¼ºñ½º¹ö½º(NServiceBus)ÀÇ Ã¢¾÷ÀÚ "¼ö³â µ¿¾È µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ ½ÇÇà¿¡ ¾î·Á¿òÀ» °Þ¾î¿Â °³¹ßÀÚµéÀº Çö¾÷¿¡¼ DDD¸¦ ±¸ÇöÇϱâ À§ÇÑ ½Ç¿ëÀûÀÎ µµ¿òÀÌ ÇÊ¿äÇß´Ù. ¹ÝÀº ±¸ÇöÀ» À§ÇÑ ºüÁü¾ø´Â Âü°í¼¸¦ ÅëÇØ À̷аú ½ÇÁ¦ »çÀÌÀÇ °£°ÝÀ» ¸Þ¿ì´Â ÈǸ¢ÇÑ ÀÏÀ» Çس´Ù. ¹ÝÀº Çö´ëÀÇ DDD ÇÁ·ÎÁ§Æ®¿¡¼ ÇØ¾ß ÇÏ´Â ÀÏÀÌ ¹«¾ùÀÎÁö ¼±¸íÇÑ ±×¸²À» ±×·Á³ª°¡¸ç, ÇÁ·ÎÁ§Æ® ¼ö¸í Áֱ⿡¼ ¹ß»ýÇÏ´Â ´ëÇ¥ÀûÀÎ ¹®Á¦¿¡ Á¢±ÙÇÏ°í ÇØ°áÇÏ´Â ¼ö¸¹Àº ½Ç¿ëÀû Á¶¾ðÀ» Á¦°øÇØÁØ´Ù." -¾Ëº£¸£Åä ºê·£µ¹¸®´Ï(Alberto Brandolini) / ¿¡¸¯ ¿¡¹Ý½º¿Í µµ¸ÞÀÎ ·©±ÍÁö ÁÖ½Äȸ»ç(Domain Language Inc.)°¡ ÀÎÁõÇÑ DDD °»ç "ÀÌ Ã¥Àº DDDÀÇ º¹ÀâÇÏ°í ³ÐÀº ºÐ¾ßÀÇ ÁÖÁ¦¸¦ ¸íÄèÇÏ°í Àç¹ÌÀÖ°í ´É¼÷ÇÏ°Ô ´Ù·ç´Â ±²ÀåÇÑ ÀÏÀ» Çس´Ù. ½Å·ÚÇÒ ¼ö ÀÖ´Â Á¶¾ðÀÚ°¡ ¿©·¯ºÐ¿¡°Ô °¡Àå Áß¿äÇÑ ÀÏÀ» ¼öÇàÇÏ´Â ¹æ¹ýÀÌ ¹«¾ùÀÎÁö¿¡ °üÇØ Àü¹®Àû »ó´ãÀ» ÇØÁÖ´Â »óȲó·³, ¸ôÀÔÀ» À¯µµÇϴ ģ±ÙÇÑ ½ºÅ¸ÀÏ·Î ¾²¿©Á³´Ù. ÀÌ Ã¥À» ¸¶Ä¥ ¶§ÂëÀ̸é DDDÀÇ ¸ðµç Áß¿ä °³³äÀ» ºñ·ÔÇÑ ¸¹Àº ºÎºÐÀ» Àû¿ëÇϱ⠽ÃÀÛÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ³ª ½º½º·Îµµ ÀÌ Ã¥À» ÀÐÀ¸¸ç ¸¹Àº ºÎºÐ¿¡ ¹ØÁÙÀ» ±ß°Ô µÆ´Ù. ÀÌÈÄ¿¡µµ ´Ù½Ã Âü°íÇÒ °ÍÀÌ°í, ÀÚÁÖ ÃßõÇÒ °ÍÀÌ´Ù." -Æú ·¹À̳Ê(Paul Rayner) / ¹öÃò¾ó Áö´Ï¾î½º À¯ÇÑÃ¥ÀÓȸ»ç(Virtual Genius LLC.)ÀÇ ¼ö¼® ÄÁ¼³ÅÏÆ®ÀÌÀÚ ¼ÒÀ¯ÁÖ, ¿¡¸¯ ¿¡¹Ý½º¿Í µµ¸ÞÀÎ ·©±ÍÁö ÁÖ½Äȸ»ç°¡ ÀÎÁõÇÑ DDD °»ç, DDD µ§¹öÀÇ ¼³¸³ÀÚÀÌÀÚ °øµ¿ ¸®´õ "³»
...
°¡ °¡¸£Ä¡´Â DDD ¼ö¾÷¿¡¼ Áß¿äÇÑ ºÎºÐ Áß Çϳª´Â ¸ðµç »ý°¢°ú Á¶°¢À» ÇÔ²² ¸ð¾Æ¼ ¿ÏÀüÈ÷ µ¿ÀÛÇÏ´Â ±¸ÇöÀ¸·Î ¸¸µå´Â ¹æ¹ýÀ» ³íÀÇÇÏ´Â °úÁ¤ÀÌ´Ù. ÀÌÁ¦ ÀÌ Ã¥Àº ÀÌ·± °úÁ¤À» »ó¼¼È÷ ¼³¸íÇÏ´Â DDD Ä¿¹Â´ÏƼÀÇ Æ÷°ýÀû Âü°í¼°¡ µÉ °ÍÀÌ´Ù. ÀÛÀº ¼¼ºÎ»çÇ׺ÎÅÍ Å« ±×¸²À» ±×·Á³ª°¡´Â ¹æ¹ý±îÁö, DDD¸¦ ÅëÇØ ½Ã½ºÅÛÀ» ±¸ÇöÇÏ´Â ¸ðµç Ãø¸éÀ» ´Ù·é´Ù. ÀÌ Ã¥Àº ÈǸ¢ÇÑ Âü°í¼ÀÌÀÚ ¿¡¸¯ ¿¡¹Ý½ºÀÇ ±â³äºñÀû DDD Ã¥ÀÇ ÈǸ¢ÇÑ µ¿¹ÝÀÚ°¡ µÅÁÙ °ÍÀÌ´Ù." -ÆÐÆ®¸¯ ÇÁ·¹µå¸¯¼Õ(Patrik Fredriksson) / ¿¡¸¯ ¿¡¹Ý½º¿Í µµ¸ÞÀÎ ·©±ÍÁö ÁÖ½Äȸ»ç(Domain Language Inc.)°¡ ÀÎÁõÇÑ DDD °»ç "¿©·¯ºÐÀÌ ¼ÒÇÁÆ®¿þ¾î ÀåÀÎÁ¤½Å(craftsmanship)À» Áß¿äÇÏ°Ô »ý°¢ÇÑ´Ù¸é(±×¸®°í ¿©·¯ºÐÀº ±×·¸°Ô »ý°¢Çؾ߸¸ ÇÑ´Ù.) µµ¸ÞÀÎ ÁÖµµ ¼³°è´Â ÀÍÇô¾ß ÇÒ Áß¿äÇÑ ±â¼úÀÇ ÁýÇÕÀ̸ç, ÀÌ Ã¥Àº ¼º°øÀ» ÇâÇÑ Áö¸§±æÀÌ´Ù. IDDD´Â DDDÀÇ Àü·« ¹× Àü¼ú ÆÐÅÏ¿¡ °üÇÑ Àбâ ÁÁÀ¸¸é¼µµ öÀúÇÏ°Ô ÁøÇàµÇ´Â ³íÀǸ¦ ´ã°í ÀÖÀ¸¸ç, À̸¦ ÅëÇØ °³¹ßÀÚ´Â ÀÌÇØÇÑ ³»¿ëÀ» Áï½Ã ½ÇÇàÀ¸·Î ¿Å±æ ¼ö ÀÖ°Ô µÈ´Ù. ³»ÀÏÀÇ ºñÁî´Ï½º ¼ÒÇÁÆ®¿þ¾î´Â ÀÌ Ã¥ÀÇ ¸íÄèÇÑ °¡À̵å·ÎºÎÅÍ µµ¿òÀ» ¹Þ°Ô µÉ °ÍÀÌ´Ù." -µ¥ÀÌºê ¹Ì¾îÈ÷µå(Dave Muirhead) / ºí·ç ¸®¹ö ½Ã½ºÅÛ ±×·ì(Blue River System Group), ¼ö¼® ÄÁ¼³ÅÏÆ® "DDD¿Í °ü·ÃÇØ ¸ðµç °³¹ßÀÚ°¡ ¹Ýµå½Ã ¾Ë¾Æ¾ß ÇÒ À̷аú ½ÇÁ¦°¡ Àִµ¥, ÀÌ Ã¥Àº ÀÌ µÑÀ» ÇÔ²² ¹¾îÁÖ´Â ÆÛÁñÀÇ ¸¶Áö¸· Á¶°¢ÀÌ µÉ °ÍÀÌ´Ù. Áø½ÉÀ¸·Î ÃßõÇÑ´Ù!" -¸¯Ä«¸£µå ¿ìº£¸£(Rickard ?berg) / Àڹ٠èÇǾðÀÌÀÚ ³×¿À Å×Å©³î·ÎÁö(Neo Technology)ÀÇ °³¹ßÀÚ "¹ÝÀº IDDD¸¦ ÅëÇØ ¹Ù¿îµðµå ÄÁÅؽºÆ®¿Í ÄÁÅؽºÆ® ¸Ê°ú °°Àº Àü·« ÆÐÅÏÀ» Àü¸é¿¡ ³»¼¼¿ì°í, ¿£ÅÍƼ¿¡ °üÇÑ ±¸¼º ¿ä¼Ò(building block) ÆÐÅÏÀ» ´Ù·ç°í, ÀÌ¾î¼ ¼ºñ½º¸¦ ÆÄ°íµé¸ç ÇÏÇâ½Ä(top-down)À¸·Î DDD¿¡ Á¢±ÙÇÑ´Ù. ±×ÀÇ Ã¥ Àü¹Ý¿¡ °ÉÃÄ »ç·Ê ¿¬±¸°¡ »ç¿ëµÇ´Âµ¥, ÀÌ Ã¥À» ÃÖ´ëÇÑ È°¿ëÇϱâ À§Çؼ± ÃæºÐÇÑ ½Ã°£À» ÅõÀÚÇØ »ç·Ê ¿¬±¸¸¦ ÀÌÇØÇÏ°í °ø°¨ÇØ¾ß ÇÑ´Ù. ÇÏÁö¸¸ ¸¸¾à ±×·¸°Ô µÇ±â¸¸ ÇÑ´Ù¸é º¹ÀâÇÑ µµ¸ÞÀο¡¼ DDD¸¦ Àû¿ëÇÒ ¶§ ¾òÀ» ¼ö ÀÖ´Â ÁøÁ¤ÇÑ °¡Ä¡¸¦ È®ÀÎÇÒ ¼ö ÀÖÀ¸¸ç, ÀÚÁÖ µîÀåÇÏ´Â °çÇ®ÀÌ¿Í ´ÙÀ̾î±×·¥°ú Ç¥¿Í ÄÚµå ¸ðµÎ°¡ ÇÙ½É ³»¿ëÀÇ ÀÌÇظ¦ µµ¿ï °ÍÀÌ´Ù. µû¶ó¼ ¿©·¯ºÐÀÌ ¿À´Ã³¯ °¡Àå ÀϹÝÀûÀ¸·Î »ç¿ëµÇ´Â ¾ÆÅ°ÅØó ½ºÅ¸ÀÏ¿¡ µû¶ó °ß½ÇÇÑ DDD ½Ã½ºÅÛÀ» ±¸ÃàÇÏ±æ ¹Ù¶ó°í ÀÖ´Ù¸é ¹ÝÀÇ Ã¥À» ÃßõÇÑ´Ù." -´í ÇìÀÌ¿ìµå(Dan Haywood) / ¡º³×ÀÌÅ°µå ¿ÀºêÁ§Æ®¸¦ ÅëÇÑ µµ¸ÞÀÎ ÁÖµµ µðÀÚÀÎ(Domain-Driven Design with Naked Objects)¡»ÀÇ ÀúÀÚ "ÀÌ Ã¥Àº ÇÏÇâ½Ä Á¢±ÙÀ» ÅëÇØ Àü·« ÆÐÅÏÀ» º¸´Ù ³·Àº ¼öÁØÀÇ Àü¼úÀû Á¦¾à»çÇ×°ú ºÎµå·´°Ô ¿¬°áÇϸç DDD¸¦ ¼³¸íÇÑ´Ù. ÃֽŠ¾ÆÅ°ÅØó ½ºÅ¸ÀÏÀ» µû¸¥ ±¸ÇöÀ» Á¦°øÇϸç ÀÌ·ÐÀ» ´Ù·ç°í ÀÖ´Ù. ¹ÝÀº ÀÌ Ã¥ÀÇ Àü¹Ý¿¡ °ÉÃÄ ±â¼úÀû °í·Á»çÇ×ÀÇ ±ÕÇü°¨À» À¯ÁöÇÏ¸ç ºñÁî´Ï½º µµ¸ÞÀο¡ ÁýÁßÇØ¾ß ÇÏ´Â Á߿伺°ú ±× °¡Ä¡¸¦ °Á¶ÇÏ°í ÀÖ´Ù. ÀÌ¿¡ µû¶ó DDDÀÇ ¿ªÇÒ°ú Àǹ̰¡ ¼ö¸é À§·Î µå·¯³´Ù. ³»°¡ ¼ÓÇÑ ÆÀ¿¡¼± DDD¸¦ Àû¿ëÇÏ¸ç ¸¶ÂûÀ» °åÀ» ¶§°¡ ¸¹¾ÒÁö¸¸, 'µµ¸ÞÀÎ ÁÖµµ ¼³°è ±¸Çö'À̶ó´Â ÇÑ Áٱ⠺ûÀÇ µµ¿òÀ» ¹Þ¾Æ¼ ¹®Á¦¸¦ ±Øº¹ÇÏ°í ¿ì¸®ÀÇ ³ë·ÂÀ» ¿ÂÀüÈ÷ ºñÁî´Ï½º °¡Ä¡ÀÇ »ý»ê¿¡ È°¿ëÇÒ ¼ö ÀÖ¾ú´Ù." -·¹ºê °í·ÎÀνºÅ°(Lev Gorodinski) / DrillSpot.com, ¼ö¼® ¾ÆÅ°ÅØÆ®
¡Ú ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë ¡Ú
¡á ºü¸¥ °¡Ä¡ âÃâÀ» À§ÇÑ ¿Ã¹Ù¸¥ DDD ½ÃÀÛ ¹æ¹ý ¡á Çí»ç°í³¯(hexagonal)À̳ª SOA, REST, CQRS, À̺¥Æ® Áß½É, Æк긯/±×¸®µå ±â¹Ý µî ´Ù¾çÇÑ ¾ÆÅ°ÅØó¿¡ ¸ÂÃá DDD »ç¿ë ¹æ¹ý ¡á ¿£ÅÍƼ¸¦ ¿Ã¹Ù¸£°Ô ¼³°èÇÏ°í Àû¿ëÇÏ´Â ¹æ¹ý°ú °ª °´Ã¼¸¦ ´ë½Å »ç¿ëÇØ¾ß ÇÏ´Â ½ÃÁ¡ ¡á DDDÀÇ »õ·Ó°í °·ÂÇÑ ±â¹ýÀÎ µµ¸ÞÀÎ À̺¥Æ®¿¡ °üÇÑ ¿ÏÀüÇÑ ÀÌÇØ ¡á ORMÀ̳ª NoSQLÀ» ºñ·ÔÇÑ ´Ù¾çÇÑ µ¥ÀÌÅͺ£À̽º¿¡ ¸ÂÃç ¸®ÆÄÁöÅ丮(repository)¸¦ ¼³°èÇÏ´Â ¹æ¹ý
¡Ú ÀÌ Ã¥ÀÇ ±¸¼º ¡Ú
1Àå: DDD¸¦ ½ÃÀÛÇϸç 1Àå¿¡¼± DDD¸¦ »ç¿ëÇÒ ¶§ ¾òÀ» ¼ö ÀÖ´Â ÀÌÀÍ°ú DDD¸¦ ´Þ¼ºÇÏ´Â ¹æ¹ýÀ» ¼Ò°³ÇÑ´Ù. ¿©·¯ºÐÀÇ ÇÁ·ÎÁ§Æ®¸¦ ¼öÇàÇÏ°í ¿©·¯ºÐÀÇ ÆÀÀÌ º¹Àâµµ·Î °í¹ÎÇÏ°í ÀÖÀ» ¶§ DDD°¡ ¼öÇàÇÒ ¼ö ÀÖ´Â ¿ªÇÒÀº ¹«¾ùÀÎÁö ¹è¿ì°Ô µÈ´Ù. ¿©·¯ºÐÀÇ ÇÁ·ÎÁ§Æ®°¡ DDD¿¡ ÅõÀÚÇصµ ÁÁÀ»Áö Æò°¡ÇÒ ¹æ¹ýÀ» ã°Ô µÈ´Ù. ¿©·¯ºÐÀÌ ÈçÈ÷ °í·ÁÇÒ ¼ö ÀÖ´Â DDDÀÇ ´ë¾ÈÀÌ ¹«¾ùÀÌ°í, ¿Ö ±×·± ´ë¾ÈÀÌ ÈçÈ÷ ¹®Á¦¸¦ ÀÏÀ¸Å°°ï ÇÏ´ÂÁö °í¹ÎÇÏ°Ô µÈ´Ù. 1Àå¿¡¼± ¿©·¯ºÐÀÇ ÇÁ·ÎÁ§Æ®°¡ ù ¹ßÀ» ³»µó±â À§ÇÑ DDDÀÇ ±â¹ÝÀ» ´Ù·ç¸ç, ÀÌ´Â ¿©·¯ºÐÀÇ °ü¸®ÀÚ¿Í µµ¸ÞÀÎ Àü¹®°¡¿Í ±â¼ú ÆÀ ±¸¼º¿øÀ» ¼³µæÇÏ´Â µ¥ µµ¿òÀÌ µÉÁöµµ ¸ð¸¥´Ù. ÀÌ´Â ¿©·¯ºÐÀÌ ¼º°ø¿¡ À̸£´Â ¹æ¹ý¿¡ °üÇÑ Áö½ÄÀ¸·Î ¹«ÀåÇØ DDD¸¦ »ç¿ëÇÒ ¶§ °Þ°Ô µÉ µµÀüÀ» ¸¶ÁÖÇÒ ¼ö ÀÖµµ·Ï ÇØÁÙ °ÍÀÌ´Ù. ½ÇÁ¦ Çö½Ç¿¡¼ °Þ°Ô µÇ´Â DDDÀÇ µµÀüÀ» ¸¶ÁÖÇÏ°í ÀÖ´Â °¡»óÀÇ È¸»ç¿Í ÆÀ¿¡ °üÇÑ ÄÉÀ̽º ½ºÅ͵𵵠ÇÔ²² ´Ù·é´Ù. Çõ½ÅÀûÀÎ ¸ÖƼÅ׳ÍÆ®(multitenant) ȯ°æÀÇ ¼ºñ½º·Î¼ÀÇ ¼ÒÇÁÆ®¿þ¾î(SaaS) ±â¹Ý Á¦Ç°À» ¸¸µé°íÀÚ ÇÏ´Â ÀÌ È¸»ç´Â DDD¸¦ Àû¿ëÇϸç ÈçÈ÷ °Þ°Ô µÇ´Â ¸¹Àº ½Ç¼ö¸¦ °æÇèÇÏÁö¸¸, ÆÀÀÌ ¹®Á¦¸¦ ÇØ°áÇÏ°í ÇÁ·ÎÁ§Æ®¸¦ À̾ ¼ö ÀÖµµ·Ï ÇØÁÖ´Â Áß¿äÇÑ ¹ß°ßÀ» ÇÏ°Ô µÈ´Ù. ÀÌ ÇÁ·ÎÁ§Æ®¿¡¼± ½ºÅ©·³ ±â¹Ý ÇÁ·ÎÁ§Æ® °ü¸® ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇϸç, ´ëºÎºÐÀÇ °³¹ßÀÚ°¡ °ü·ÃµÅ ÀÖ´Ù. ÀÌ ÄÉÀ̽º ½ºÅ͵ð´Â À̾îÁö´Â Àå¿¡¼µµ °è¼ÓÇؼ È°¿ëµÈ´Ù. °¢°¢ÀÇ Àü·«Àû ÆÐÅÏ°ú Àü¼úÀû ÆÐÅÏÀ» ÆÀÀÇ ½Ã°¢¿¡¼ ÇнÀÇÏ°Ô µÇ¸ç, ÆÀÀÇ ½Ç¼ö»Ó¸¸ ¾Æ´Ï¶ó ÆÀÀÌ ¼º°øÀûÀÎ DDD ±¸ÇöÀ» À§ÇØ ¼º¼÷Çسª°¡´Â °úÁ¤À» ÇÔ²² ´Ù·é´Ù. 2Àå: µµ¸ÞÀÎ, ¼ºêµµ¸ÞÀÎ, ¹Ù¿îµðµå ÄÁÅؽºÆ® µµ¸ÞÀÎ(Domain)À̳ª ¼ºêµµ¸ÞÀÎ(Subdomain)À̳ª ÇÙ½É µµ¸ÞÀÎ(Core Domain)Àº ¹«½¼ ÀǹÌÀÌ°í, À̸¦ »ç¿ëÇØ¾ß ÇÏ´Â ÀÌÀ¯¿Í »ç¿ëÇÏ´Â ¹æ¹ýÀº ¹«¾ùÀϱî? ¿ì¸®ÀÇ ÄÉÀ̽º ½ºÅ͵𿡼 ÇÁ·ÎÁ§Æ® ÆÀÀÌ ÀúÁö¸£´Â ½Ç¼ö¸¦ ÅëÇØ ÀÌ Áú¹®ÀÇ ´äÀ» ã¾Æº»´Ù. ÀÌ ÆÀÀº ù ¹ø° DDD ÇÁ·ÎÁ§Æ®¸¦ ½ÃÀÛÇϸç ÀڽŵéÀÌ ÀÏÇÏ°í ÀÖ´Â ¼ºêµµ¸ÞÀΰú ¹Ù¿îµðµå ÄÁÅؽºÆ®¿Í Á¤È®ÇÑ À¯ºñÄõÅͽº ¾ð¾î¸¦ ÀÌÇØÇÏ´Â µ¥ ½ÇÆÐÇÑ´Ù. »ç½Ç, À̵éÀº Àü·«Àû ¼³°è¿¡ ÀüÇô Àͼ÷ÇÏÁö ¾ÊÀ¸¸ç, ´Ü¼øÈ÷ Àü¼ú ¼öÁØ¿¡¼ÀÇ ÀÌÀÍÀ» À§ÇØ Àü¼úÀû ÆÐÅϸ¸À» È°¿ëÇÏ°í ÀÖ¾ú´Ù. ÀÌ ¶§¹®¿¡ Ãʱ⠵µ¸ÞÀÎ ¸ðµ¨ ¼³°è¿¡ ¹®Á¦°¡ ¹ß»ýÇÏ°Ô µÈ´Ù. ´ÙÇེ·´°Ôµµ À̵éÀº Èñ¸ÁÀ» ãÀ» ¼ö ¾ø´Â ´Ë¿¡ ºüÁö±â¿¡ ¾Õ¼ ¹«¾ùÀÌ À߸øµÆ¾ú´ÂÁö ã°Ô µÈ´Ù. ¿©±â¿¡´Â ¹Ù¿îµðµå ÄÁÅؽºÆ®¸¦ Àû¿ëÇØ ¸ðµ¨À» ¿Ã¹Ù¸£°Ô ±¸ºÐÇÏ°í ºÐ¸®ÇÏ´Â µ¥ °üÇÑ Áß¿äÇÑ ¸Þ½ÃÁö°¡ ´ã°Ü ÀÖ´Ù. ÈçÈ÷ ºüÁö´Â À߸øµÈ ÆÐÅÏÀÇ Àû¿ë¿¡ °üÇØ ´Ù·ç¸ç, ÆÐÅÏÀ» È¿À²ÀûÀ¸·Î ±¸ÇöÇÏ´Â ¹æ¹ý¿¡ °üÇØ Ãæ°íÇÑ´Ù. À̸¦ ÅëÇØ À̵éÀÇ ¼¼ ¹ø° ¹Ù¿îµðµå ÄÁÅؽºÆ®¿Í »õ·Î¿î ÇÙ½É µµ¸ÞÀΰú Ã¥¿¡¼ »ç¿ëµÇ´Â ÁÖ¿ä ¿¹Á¦¿¡¼ ¿Ã¹Ù¸£°Ô ¸ðµ¨¸µ °³³äÀ» ºÐ¸®Çس»°Ô µÈ´Ù. ±â¼úÀûÀÎ Ãø¸é¿¡¼¸¸ DDD¸¦ Àû¿ëÇÏ¸ç °íÅëÀ» ´À²¼´ø µ¶ÀÚ¶ó¸é 2ÀåÀÇ ³»¿ë¿¡ Å©°Ô °ø°¨ÇÏ°Ô µÉ °ÍÀÌ´Ù. ¿©·¯ºÐÀÌ ¾ÆÁ÷ Àü·«Àû ¼³°èÀ» Á¦´ë·Î ½ÃÀÛÇÏÁö ¾Ê¾Ò´Ù¸é, ¼º°øÀûÀÎ ¿©Á¤À» ½ÃÀÛÇÏ´Â ¿Ã¹Ù¸¥ ¹æÇâÀ» ã°Ô µÈ´Ù. 3Àå: ÄÁÅؽºÆ® ¸Ê ÄÁÅؽºÆ® ¸Ê(Context Map)Àº ÆÀÀÌ ºñÁî´Ï½º µµ¸ÞÀΰú ¿ä·Î ¸ðµ¨ »çÀÌÀÇ °æ°è¿Í ÅëÇÕÀÌ ÁøÇàµÇ´Â ÇüŸ¦ ÀÌÇØÇÒ ¼ö ÀÖµµ·Ï µµ¿ÍÁÖ´Â °·ÂÇÑ µµ±¸´Ù. À̸¦ À§ÇÑ ±â¹ýÀº ´Ü¼øÈ÷ ½Ã½ºÅÛ ¾ÆÅ°ÅØóÀÇ ´ÙÀ̾î±×·¥À» ±×¸®´Â µ¥ ±¹ÇѵÇÁö ¾Ê´Â´Ù. ÀÌ´Â ¿£ÅÍÇÁ¶óÀÌÁî ³»ºÎÀÇ ¿©·¯ ¹Ù¿îµðµå ÄÁÅؽºÆ®¿Í ÇϳªÀÇ ¸ðµ¨¿¡¼ ´Ù¸¥ ¸ðµ¨·Î °´Ã¼¸¦ ¸ÅÇÎÇÏ´Â µ¥ »ç¿ëµÇ´Â ÆÐÅÏ »çÀÌÀÇ °ü°è¸¦ ÀÌÇØÇÏ´Â ¹®Á¦´Ù. º¹ÀâÇÑ ºñÁî´Ï½º¸¦ °®°í ÀÖ´Â ¿£ÅÍÇÁ¶óÀÌÁî¿¡¼ ¹Ù¿îµðµå ÄÁÅؽºÆ®¸¦ Á¦´ë·Î ±¸¼ºÇϱâ À§Çؼ± ÀÌ µµ±¸ÀÇ »ç¿ëÀÌ Áß¿äÇÏ´Ù. 3Àå¿¡¼± ÇÁ·ÎÁ§Æ® ÆÀÀÌ Ã³À½À¸·Î »ý¼ºÇß´ø ¹Ù¿îµðµå ÄÁÅؽºÆ®(2Àå¿¡¼ ´Ù·ç´Â)ÀÇ ¹®Á¦¸¦ ÀÌÇØÇϱâ À§ÇØ ÄÁÅؽºÆ® ¸ÅÇÎÀ» Àû¿ëÇÏ´Â °úÁ¤À» »ìÆ캻´Ù. ±×¸®°í »õ·Î¿î ÇÙ½É µµ¸ÞÀÎÀ» ¼³°èÇÏ°í ±¸ÇöÇØ¾ß ÇÏ´Â ÆÀÀÌ ±× °á°ú·Î ¸¸µé¾îÁø ±ò²ûÇÑ µÎ ¹Ù¿îµðµå ÄÁÅؽºÆ®¸¦ È°¿ëÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁØ´Ù. 4Àå: ¾ÆÅ°ÅØó ¿ì¸® ¸ðµÎ´Â ÀÌ¹Ì °èÃþ ¾ÆÅ°ÅØó(Layers Architecture)¿¡ °üÇØ ¾Ë°í ÀÖ´Ù. ÇÏÁö¸¸ °èÃþÀÌ Á¤¸» DDD ¾ÖÇø®ÄÉÀ̼ÇÀ» ´Ù·ç´Â À¯ÀÏÇÑ ¹æ¹ýÀϱî? ±×·¸Áö ¾Ê´Ù¸é ¾î¶² ´Ù¸¥ ¾ÆÅ°ÅØó°¡ ÀÖÀ»±î? ¿©±â¼± Çí»ç°í³¯((Hexagonal),(Æ÷Æ®¿Í ¾î´ðÅÍ(Ports and Adaptors)), ¼ºñ½º ÁöÇâ, REST, CQRS, À̺¥Æ® Áß½É(ÆÄÀÌÇÁ¿Í ÇÊÅÍ(Pipes and Filters), Àå±â ½ÇÇà ÇÁ·Î¼¼½º(Long-Running Process)³ª »ç°¡(Saga), À̺¥Æ® ¼Ò½Ì(Event Sourcing)), µ¥ÀÌÅÍ Æк긯/±×¸®µå(Data Fabric/Grid) ±â¹Ý µîÀÇ ¿©·¯ ¾ÆÅ°ÅØó ¾È¿¡¼ DDD¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» °í¹ÎÇÑ´Ù. ÇÁ·ÎÁ§Æ® ÆÀÀº ÀÌ·± ¿©·¯ ¾ÆÅ°ÅØó ½ºÅ¸ÀÏÀ» Àû¿ëÇÏ°Ô µÈ´Ù. 5Àå: ¿£ÅÍƼ ù ¹ø°·Î ´Ù·ê DDD Àü¼ú ÆÐÅÏÀº ¿£ÅÍƼ(Entity)´Ù. ÇÁ·ÎÁ§Æ® ÆÀÀº ¿£ÅÍƼ¿¡ ³Ê¹« Å©°Ô ÀÇÁ¸Çؼ, °ª °´Ã¼(Value Object)·Î ¼³°èÇØ¾ß ÇÏ´Â Á߿伺À» °£°úÇÏ°Ô µÈ´Ù. ÀÌ·Î ÀÎÇØ µ¥ÀÌÅͺ£À̽º¿Í ¿µ¼Ó¼º ÇÁ·¹ÀÓ¿öÅ©ÀÇ °úµµÇÑ °£¼·À¸·Î ¿£ÅÍƼ¸¦ ³²¿ëÇÏ´Â ¹®Á¦¿¡ °üÇØ ³íÀÇÇÏ°Ô µÈ´Ù. ¿£ÅÍƼ¸¦ »ç¿ëÇÏ´Â ¿Ã¹Ù¸¥ ¹æ¹ý¿¡ Àͼ÷ÇØÁø ´ÙÀ½¿¡´Â ¿£ÅÍƼ¸¦ ¼³°èÇÏ´Â ¹æ¹ý¿¡ °üÇÑ ´Ù¾çÇÑ ¿¹Á¦¸¦ ´Ù·ç°Ô µÈ´Ù. À¯ºñÄõÅͽº ¾ð¾î¸¦ ¿£ÅÍƼ·Î Ç¥ÇöÇÏ´Â ¹æ¹ýÀº ¹«¾ùÀϱî? ¾î¶»°Ô ¿£ÅÍƼ¸¦ Å×½ºÆ®ÇÏ°í ±¸ÇöÇÏ°í ÀúÀåÇÒ±î? 5Àå¿¡¼± ÀÌ·± ¹®Á¦¸¦ Çϳª¾¿ ´Ù·ï°¡¸ç °¡À̵带 Á¦½ÃÇÑ´Ù. 6Àå: °ª °´Ã¼ ÇÁ·ÎÁ§Æ® ÆÀÀº Ãʱ⿡ °ª °´Ã¼¸¦ »ç¿ëÇÑ Áß¿äÇÑ ¸ðµ¨¸µ ±âȸ¸¦ ³õÃÆ´Ù. ÀÌ ÆÀÀº ¿©·¯ °ü·Ã ¼Ó¼ºÀ» ºÒº¯ÇÏ´Â ¹À½À¸·Î ¸ðÀ¸´Â µ¥ ÁÖÀǸ¦ ±â¿ï¿©¾ß ÇßÀ» ¼ø°£¿¡, ¿£ÅÍƼÀÇ °³º°Àû ¼Ó¼º¿¡¸¸ ³Ê¹« ÁýÁßÇß¾ú´Ù. 6Àå¿¡¼± ¿£ÅÍƼ°¡ ¾Æ´Ñ °ªÀ» »ç¿ëÇØ¾ß ÇÏ´Â ½Ã±â¸¦ °áÁ¤Çϱâ À§ÇØ ¸ðµ¨ÀÇ Æ¯¼ºÀ» ½Äº°ÇÏ´Â ¹æ¹ýÀ» ³íÀÇÇÏ¸é¼ °ª °´Ã¼ÀÇ ¼³°è¸¦ ¿©·¯ ¹æÇâ¿¡¼ »ìÆ캻´Ù. 6Àå¿¡¼± ÅëÇÕÀ» ÁøÇàÇÒ ¶§ °ªÀÌ ¼öÇàÇÏ°Ô µÇ´Â ¿ªÇÒÀ̳ª Ç¥ÁØ Å¸ÀÓÀÇ ¸ðµ¨¸µ°ú °°Àº ´Ù¸¥ Áß¿äÇÑ ÁÖÁ¦µµ ÇÔ²² ´Ù·é´Ù. ÀÌ¾î¼ µµ¸ÞÀÎ Á᫐ Å×½ºÆ®¸¦ ¼³°èÇÏ´Â ¹æ¹ý, °ª ŸÀÔÀ» ±¸ÇöÇÏ´Â ¹æ¹ý, ¾Ö±×¸®°ÔÀÕÀÇ ÀϺηΠÀ̵éÀ» ÀúÀåÇØ¾ß ÇÒ ¶§ ¿µ¼Ó¼º ¸ÞÄ¿´ÏÁòÀ¸·Î ÀÎÇÑ ³ª»Û ¿µÇâÀ» ÇÇÇÏ´Â ¹æ¹ý µîµµ À̾߱âÇÑ´Ù. 7Àå: ¼ºñ½º 7Àå¿¡¼± ÇϳªÀÇ °³³äÀ» µµ¸ÞÀÎ ¸ðµ¨ ¾ÈÀÇ Àß Â¥¿©Áø ¹«»óÅ ¼ºñ½º(Service)·Î ¸ðµ¨¸µÇØ¾ß ÇÏ´Â ½ÃÁ¡ÀÌ ¾ðÁ¦ÀÎÁö º¸¿©ÁØ´Ù. ¿©·¯ºÐÀº ¿£ÅÍƼ³ª °ª °´Ã¼°¡ ¾Æ´Ñ ¼ºñ½º¸¦ ¼³°èÇØ¾ß ÇÏ´Â ½ÃÁ¡°ú, ºñÁî´Ï½º µµ¸ÞÀÎ ·ÎÁ÷À» ó¸®Çϰųª ±â¼úÀû ÅëÇÕÀ» À§ÇØ µµ¸ÞÀÎ ¼ºñ½º¸¦ ±¸ÇöÇÏ´Â ¹æ¹ýÀ» È®ÀÎÇÏ°Ô µÈ´Ù. ¼ºñ½º¸¦ »ç¿ëÇÏ´Â ½ÃÁ¡°ú ¼ºñ½º¸¦ ¼³°è ÇÏ´Â ¹æ¹ý¿¡ °üÇÑ »ç·Ê·Î¼ ÇÁ·ÎÁ§Æ® ÆÀÀÌ ³»¸° °áÁ¤À» »ìÆ캻´Ù. 8Àå: µµ¸ÞÀÎ À̺¥Æ® ¿¡¸¯ ¿¡¹Ý½º°¡ ±×ÀÇ Ã¥À» ÃâÆÇÇß´ø ½ÃÁ¡¿¡¼± µµ¸ÞÀÎ À̺¥Æ®(Domain Event)°¡ DDDÀÇ ÇÑ ºÎºÐÀ¸·Î ¼Ò°³µÇ±â ÀÌÀüÀ̾ú´Ù. ¸ðµ¨¿¡¼ ¹ßÇàÇÏ´Â µµ¸ÞÀÎ À̺¥Æ®°¡ ¿Ö ±×·¸°Ô °·ÂÇÑÁö¿Í, ºñÁî´Ï½º ¼ºñ½ºÀÇ ÅëÇÕ°ú ÀÚµ¿È¸¦ Áö¿øÇÏ´Â °¡¿îµ¥ µµ¸ÞÀÎ À̺¥Æ®¸¦ »ç¿ëÇÏ´Â ¿©·¯ ¹æ¹ýÀ» ¹è¿ì°Ô µÈ´Ù. ¾ÖÇø®ÄÉÀ̼ÇÀº ±âº»ÀûÀ¸·Î ¿©·¯ Á¾·ùÀÇ ±â¼úÀû À̺¥Æ®¸¦ º¸³»°í ó¸®ÇÏÁö¸¸, µµ¸ÞÀÎ À̺¥Æ®¸¸ÀÇ Æ¯Â¡ÀÌ ¹«¾ùÀÎÁö ±¸ºÐÇØ ³íÀÇÇÑ´Ù. ¼³°è¿Í ±¸ÇöÀ» À§ÇÑ °¡À̵带 Á¦°øÇϸç, ¼±ÅÃÇÒ ¼ö ÀÖ´Â ¿É¼Ç°ú ±×¿¡ µû¸¥ Àå´ÜÁ¡À» ¾Ë·ÁÁØ´Ù. ÀÌ¾î¼ ¹ßÇà-±¸µ¶(Publish-Subscribe) ¸ÞÄ¿´ÏÁòÀ» ¸¸µå´Â ¹æ¹ý, ¿£ÅÍÇÁ¶óÀÌÁ ¾Æ¿ì¸£¸ç ±¸µ¶ÀÚ¸¦ ÅëÇÕÇÏ´Â ¹æ¹ý, À̺¥Æ® ÀúÀå¼Ò¸¦ »ý¼ºÇÏ°í °ü¸®ÇÏ´Â ¹æ¹ý, ÈçÈ÷ °Þ°Ô µÇ´Â ¸Þ½Ã¡ ¹®Á¦¿¡ ´ëóÇÏ´Â ¹æ¹ý µîÀ» ³íÀÇÇÑ´Ù. ¶ÇÇÑ ÇÁ·ÎÁ§Æ® ÆÀÀÌ À̸¦ ¿Ã¹Ù¸£°Ô Àû¿ëÇÏ´Â °úÁ¤°ú °¢ ¹æ¹ý¸¸ÀÇ ÀåÁ¡À» Á¶¸íÇÑ´Ù. 9Àå: ¸ðµâ ¸ðµ¨ °´Ã¼¸¦ ´Ù¸¥ ÄÁÅ×À̳ʿ¡ ¼ÓÇÑ °´Ã¼¿ÍÀÇ °áÇÕµµ´Â Á¦ÇÑÇÏ´Â °¡¿îµ¥ ¿Ã¹Ù¸¥ Å©±âÀÇ ÄÁÅ×À̳ʿ¡ ´ã¾Æ³»´Â ¹æ¹ýÀº ¹«¾ùÀϱî? ÀÌ·± ÄÁÅ×À̳ʰ¡ À¯ºñÄõÅͽº ¾ð¾î¸¦ ¹Ý¿µÇϵµ·Ï ÇÏ·Á¸é ¾î¶»°Ô À̸§À» ºÙ¿©¾ß ÇÒ±î? ÆÐÅ°Áö³ª ³×ÀÓ½ºÆäÀ̽º¸¦ ³Ñ¾î¼, ¾ð¾î¿Í ÇÁ·¹ÀÓ¿öÅ©¿¡¼ Á¦°øÇÏ´Â Á» ´õ ÃÖ½ÅÀÇ ¸ðµâÈ ±â´É(OSGi, Á÷¼Ò(Jigsaw)¿Í °°Àº)Àº ¾î¶»°Ô È°¿ëÇÒ ¼ö ÀÖÀ»±î? ¿©±â¼± ÇÁ·ÎÁ§Æ® ÆÀÀÌ ¿©·¯ ÇÁ·ÎÁ§Æ®¿¡ °ÉÃÄ ¸ðµâÀ» »ç¿ëÇÏ´Â ¹æ¹ýÀ» »ìÆ캻´Ù. 10Àå: ¾Ö±×¸®°ÔÀÕ ¾Ö±×¸®°ÔÀÕÀº ¾Æ¸¶µµ DDDÀÇ Àü¼ú µµ±¸ °¡¿îµ¥ °¡Àå ÀÌÇصµ°¡ ³·Àº µµ±¸ÀÏ °ÍÀÌ´Ù. ±×·¸Áö¸¸ ¸î °¡ÁöÀÇ °æÇè ¹ýÄ¢(rules of thumb)À» Àû¿ëÇÏ¸é ¾Ö±×¸®°ÔÀÕÀ» ´õ °£´ÜÇÏ°í ºü¸£°Ô ±¸ÇöÇÒ ¼ö ÀÖ´Ù. ¿©·¯ºÐÀº ÀÛÀº °´Ã¼ Ŭ·¯½ºÅÍÀÇ ÁÖº¯À¸·Î ÀÏ°ü¼º °æ°è¸¦ ±¸ÃàÇÏ¸é¼ º¹ÀâµµÀÇ º®À» ºÎ¼ö°í ¾Ö±×¸®°ÔÀÕÀ» »ç¿ëÇÏ´Â ¹æ¹ýÀ» ÇнÀÇÏ°Ô µÈ´Ù. ÇÁ·ÎÁ§Æ® ÆÀÀº ±×´ÙÁö Áß¿äÇÏÁö ¾ÊÀº ºÎºÐ¿¡ ³Ê¹« Å« °ü½ÉÀ» µÖ¼ ¸î °¡Áö À߸øµÈ ¹æÇâÀ» ¼±ÅÃÇÏ´Â ½Ç¼ö¸¦ ÀúÁö¸£°Ô µÈ´Ù. ¿ì¸° ÆÀÀÇ ÀÌÅÍ·¹À̼ÇÀ» µû¶ó°¡¸é¼ ¸ðµ¨¸µ °úÁ¤¿¡¼ °Þ°Ô µÇ´Â ¹®Á¦¿Í ÆÀÀÌ ÀúÁö¸¥ À߸øÀ̳ª ±× ¹ÛÀÇ °áÁ¤»çÇ×À» ºÐ¼®ÇÑ´Ù. ÆÀÀº ³ë·ÂÀ» ±â¿ïÀÌ¸é¼ ÇÙ½É µµ¸ÞÀο¡ ´ëÇØ ´õ ±íÀÌ ÀÌÇØÇÒ ¼ö ÀÖ°Ô µÆ´Ù. ¿ì¸° ÆÀÀÌ Æ®·£Àè¼Ç°ú °á°úÀû ÀÏ°ü¼º(eventual consistency)À» ¿Ã¹Ù¸£°Ô Àû¿ëÇØ ºÐ»ê ó¸® ȯ°æ¿¡¼ È®À强°ú ¼º´ÉÀ» ´õ ³ôÀÎ ¸ðµ¨À» ¼³°èÇÏ¸é¼ ÀڽŵéÀÌ ÀúÁö¸¥ ½Ç¼ö¸¦ °íÃÄ°¡´Â °úÁ¤À» »ìÆ캻´Ù. 11Àå: ÆÑÅ丮 ÀÌ¹Ì ¡ºGoFÀÇ µðÀÚÀÎ ÆÐÅÏ¡»¿¡¼± ÆÑÅ丮¿¡ °üÇÑ ÃæºÐÇÑ À̾߱⸦ Çߴµ¥µµ ¿Ö ÀÌ Ã¥¿¡¼ ´Ù½Ã À̸¦ ¾ð±ÞÇÏ·Á°í ÇÒ±î? 11Àå¿¡¼± ÆÑÅ丮¿¡ °üÇÑ ¼¼·Î¿î À̾߱⸦ ÇÏ·Á´Â °Ô ¾Æ´Ï´Ù. ±×º¸´Ù´Â ÆÑÅ丮°¡ ¾îµð¿¡ À§Ä¡ÇØ¾ß ÇÏ´ÂÁö ÀÌÇØÇÏ´Â µ¥ ÁýÁßÇÑ´Ù. ¹°·Ð DDDÀÇ ¼³Á¤¿¡ ¸ÂÃç Á¦ ¿ªÇÒÀ» ÇÏ´Â ÆÑÅ丮¸¦ ¼³°èÇÏ´Â ¸î °¡Áö ÆÁµµ ÇÔ²² ¼Ò°³ÇÑ´Ù. ÇÁ·ÎÁ§Æ® ÆÀÀÌ Å¬¶óÀ̾ðÆ® ÀÎÅÍÆäÀ̽º¸¦ ´Ü¼øÈÇÏ°í ¸ðµ¨ÀÇ »ç¿ëÀÚ°¡ ¸ÖƼÅ׳ÍÆ®(multitenant) ȯ°æ¿¡¼ Àç¾ÓÀûÀÎ ¹ö±×¸¦ À¯¹ßÇÏÁö ¾Êµµ·Ï ¸·À¸¸é¼ ÆÑÅ丮¸¦ »ý¼ºÇÏ´Â ¹æ¹ýÀ» È®ÀÎÇÏÀÚ. 12Àå: ¸®ÆÄÁöÅ丮 ¸®ÆÄÁöÅ丮(Repository)´Â ´ÜÁö ´Ü¼øÇÑ µ¥ÀÌÅÍ Á¢±Ù °´Ã¼(Data Access Object, DAO)°¡ ¾Æ´Ñ°¡? ¿Ö ¿ì¸° µ¥ÀÌÅͺ£À̽º°¡ ¾Æ´Ñ Ä÷º¼ÇÀ» Èä³»±â À§ÇØ ¸®ÆÄÁöÅ丮¸¦ ¼³°èÇÏ´Â ¹æ¾ÈÀ» °í·ÁÇØ¾ß ÇÒ±î? ±×¸®µå ±â¹ÝÀÇ ÄÚÈ÷·±½º(Coherence) ºÐ»ê ij½Ã¸¦ Áö¿øÇϰųª NoSQL Å°-°ª ÀúÀå¼Ò¸¦ »ç¿ëÇÏ´Â, ORMÀ» »ç¿ëÇÑ ¸®ÆÄÁöÅ丮¸¦ ¼³°èÇÏ´Â ¹æ¹ýÀ» ÇнÀÇÏÀÚ. ÀÌ·± ºÎ°¡ÀûÀÎ ¿µ¼Ó¼º ¸ÞÄ¿´ÏÁòÀº ¸®ÆÄÁöÅ丮¶ó´Â ±¸¼º ¿ä¼Ò¿¡¼ ¿À´Â °·ÂÇÔ°ú ´ÙÀç´Ù´ÉÇÔÀ¸·Î ÀÎÇØ ÇÁ·ÎÁ§Æ® ÆÀÀ» Æí¾ÈÇÏ°Ô ÇØÁØ´Ù. 13Àå: ¹Ù¿îµðµå ÄÁÅؽºÆ®ÀÇ ÅëÇÕ Áö±Ý±îÁö ¿©·¯ºÐÀº ÄÁÅؽºÆ® ¸ÅÇÎÀÇ »óÀ§ ¼öÁØ ±â¹ýÀ» ÀÌÇØÇß°í Àü¼ú ÆÐÅÏÀ» È°¿ëÇÒ ¼ö ÀÖ°Ô µÆÁö¸¸, ¸ðµ¨ÀÇ ÅëÇÕÀ» ½ÇÁ¦·Î ±¸ÇöÇÒ ¶§´Â ¾î¶² ÀÏÀÌ ÀϾ±î? DDD¿¡¼± ¾î¶² ÅëÇÕ ¿É¼ÇÀÌ ÁÖ¾îÁú±î? 13Àå¿¡¼± ÄÁÅؽºÆ® ¸ÅÇÎÀ» ÅëÇØ ¸ðµ¨ÀÇ ÅëÇÕÀ» ±¸ÇöÇÏ´Â ¸î °¡Áö ¹æ¹ýÀ» ¼Ò°³ÇÑ´Ù. ÇÁ·ÎÁ§Æ® ÆÀÀÌ ÇÙ½É µµ¸ÞÀΰú ±×¸¦ Áö¿øÇÏ´Â ¹Ù¿îµðµå ÄÁÅؽºÆ®¸¦ ÅëÇÕÇÏ´Â ¹æ¹ý¿¡ ±â¹ÝÇØ ÅëÇÕÀÇ ÁöħÀ» Á¦°øÇÑ´Ù. 14Àå: ¾ÖÇø®ÄÉÀÌ¼Ç ¿©·¯ºÐÀº ÇÙ½É µµ¸ÞÀÎÀÇ À¯ºñÄõÅͽº ¾ð¾î¿¡ µû¶ó ¸ðµ¨À» ¼³°èÇß´Ù. ¶ÇÇÑ ±× »ç¿ë¹ý°ú Á¤È®¼º¿¡ µû¶ó ÃæºÐÇÑ Å×½ºÆ®¸¦ ¸¸µé¾ú°í, ½ÇÁ¦·Î µ¿ÀÛÇÔÀ» È®ÀÎÇß´Ù. ÇÏÁö¸¸ ¿©·¯ºÐÀÇ ÆÀ¿¡ ¼ÓÇÑ ´Ù¸¥ ±¸¼º¿øÀÌ ÇØ´ç ¸ðµ¨À» µÑ·¯½Ñ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ´Ù¸¥ ¿µ¿ªÀ» ¼³°èÇÒ ¶§´Â ¾î¶»°Ô ÇØ¾ß ÇÒ±î? ±×µéÀº ¸ðµ¨°ú »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º »çÀÌ¿¡¼ µ¥ÀÌÅ͸¦ Àü´ÞÇϱâ À§ÇØ DTO¸¦ »ç¿ëÇØ¾ß ÇÒ±î? ¾ÖÇø®ÄÉÀÌ¼Ç ¼ºñ½º(Application Service)¿Í ÀÎÇÁ¶ó´Â ¾î¶»°Ô µ¿ÀÛÇÒ±î? 14Àå¿¡¼± Àͼ÷ÇØÁ³À» ÇÁ·ÎÁ§Æ®¿¡¼ ¼±ÅÃÇÒ ¼ö ÀÖ´Â ¿É¼ÇÀ» »ìÆ캸¸ç ÀÌ ¹®Á¦¸¦ ´Ù·é´Ù. ºÎ·Ï A: ¾Ö±×¸®°ÔÀÕ°ú À̺¥Æ® ¼Ò½Ì: A+ES À̺¥Æ® ¼Ò½Ì(Event Sourcing)Àº ¾Ö±×¸®°ÔÀÕÀ» ÀúÀåÇϱâ À§ÇÑ Áß¿äÇÑ ±â¼úÀû Á¢±Ù¹ýÀ̸ç, À̺¥Æ® Á᫐ ¾ÆÅ°ÅØó(Event-Driven Architecture)¸¦ ¸¸µå´Â ±â¹ÝÀ» Á¦°øÇÑ´Ù. ¾Ö±×¸®°ÔÀÕÀÌ »ý¼ºµÈ ÈÄ ¹ß»ýÇÏ´Â ÀÏ·ÃÀÇ À̺¥Æ®¸¦ ÅëÇØ ¾Ö±×¸®°ÔÀÕÀÇ Àüü »óŸ¦ Ç¥ÇöÇϱâ À§ÇØ À̺¥Æ® ¼Ò½ÌÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. À̺¥Æ®¸¦ ¹ß»ý ¼ø¼¸¦ ÁöÄÑ ´Ù½Ã Àç»ýÇÔÀ¸·Î½á ¾Ö±×¸®°ÔÀÕÀÇ »óŸ¦ À籸ÃàÇÒ ¼ö ÀÖ´Ù. µû¶ó¼ À̺¥Æ®´Â ¿µ¼Ó¼ºÀ» ´Ü¼øÈÇÏ°í º¹ÀâÇÑ ÇàÀ§ ¼Ó¼º¿¡¼ °³³äÀ» Æ÷ÂøÇϵµ·Ï ÇØÁÖ´Â °¡¿îµ¥, À̺¥Æ® ÀÚü°¡ ¿©·¯ºÐ ÀÚ½ÅÀÇ ½Ã½ºÅÛ°ú ¿ÜºÎ ½Ã½ºÅÛ¿¡ Áö´ëÇÑ ¿µÇâÀ» ¹ÌÄ¡´Â ¿ä¼Ò°¡ µÈ´Ù.
¡Ú ÁöÀºÀÌÀÇ ¸» ¡Ú
¶¥¿¡ ¼ ÀÖ±â, ÀÌ·úÇϱ⠳»°¡ ¾î·ÈÀ» ¶§, ³ªÀÇ ¾Æ¹öÁö´Â ÀÛÀº ºñÇà±â¸¦ ¸ô±â À§ÇÑ °øºÎ¸¦ Çϼ̴Ù. °¡Á· Àüü°¡ Á¾Á¾ ºñÇà¿¡ ÇÔ²²Çß´Ù. ¶§·Ð Á¡½É ½Ä»ç¸¦ À§ÇØ ´Ù¸¥ °øÇ׿¡ µé·È´Ù°¡ µ¹¾Æ¿À°ï Çß´Ù. ¿ì¸®°¡ Çϴÿ¡ ¿Ã¶ó°¡±æ ¹Ù¶óÁö¸¸ ¾Æ¹öÁöÀÇ ½Ã°£ÀÌ Çã¶ôÇÏÁö ¾ÊÀ» ¶§¸é, ¹ÛÀ¸·Î ³ª°¡ 'ÅÍÄ¡ ¾Ø °í(Touch and Go)'¸¦ µû¶ó Çß´Ù. ¶§·Ð Àå°Å¸® ¿©ÇàÀ» Çϱ⵵ Çß´Ù. ±×·² ¶§¸é Ç×»ó ¾Æ¹öÁö°¡ °æ·Î¸¦ °èȹÇصРÁöµµ°¡ ÀÖ¾ú´Ù. ¾î·È´ø ¿ì¸®´Â ¾Æ·¡ÂÊÀÇ ·£µå¸¶Å©¸¦ »ìÆ캸¸ç °èȹ´ë·Î °æ·Î¸¦ µû¸£°í ÀÖ´ÂÁö È®ÀÎÇÏ´Â ÀÏÀ» Çß¾ú´Ù. ÀÌ ÀÏÀº »ó¼¼ÇÑ ºÎºÐÀ» È®ÀÎÇÒ ¼ö ¾øÀÌ ¸Ö¸® ¶³¾îÁø ÁöÁ¡À» »ìÆì¼ ´ë»óÀ» ã¾Æ¾ß ÇÏ´Â µµÀüÀÌ ÇÊ¿äÇ߱⿡ ±²ÀåÈ÷ Áñ°Å¿ü´Ù. ½ÇÁ¦·Î ³ª´Â ¾Æ¹öÁö°¡ ¿ì¸®°¡ ¾îµð·Î °¡´ÂÁö Ç×»ó ¾Ë°í ÀÖ´Ù°í È®½ÅÇß´Ù. ¾Æ¹öÁö´Â ¸ðµç ÀåÄ¡°¡ ³ª¿µÈ °è±âÆÇÀ» ´Ù·ç°í ÀÖ¾ú°í, ±×´Â °è±â ºñÇà ÀÚ°ÝÁõÀ» °®°í ÀÖ¾ú´Ù. Çϴÿ¡¼ÀÇ °æÄ¡´Â ½ÇÁ¦·Î ³ªÀÇ °üÁ¡À» º¯È½ÃÄ×´Ù. ¶§¶§·Î ¾Æ¹öÁö¿Í ³ª´Â ½Ã°ñ¿¡ ÀÖ´ø ¿ì¸®ÀÇ Áý À§¸¦ ³¯¾Ò´Ù. ³ª´Â ¼ö¹é ÇÇÆ® À§¿¡¼ ¹Ù¶óº¸´Â ±¤°æÀ» ¹ÙÅÁÀ¸·Î ÀÌÀü¿£ °®Áö ¸øÇß´ø ÄÁÅؽºÆ®(context, ¹®¸Æ)¸¦ ±ú´Ý°Ô µÆ´Ù. ¾Æ¹öÁö°¡ Áý À§¸¦ ³¯ ¶§¸é ¾î¹Ì´Ï¿Í ÀڸŵéÀÌ ¸¶´çÀ¸·Î ¶ÙÃijª¿Í ¼ÕÀº Èçµé¾ú´Ù. ³ª´Â ±×µéÀÇ ´«À» ¹Ù¶óº¼ ¼ø ¾ø´õ¶óµµ ±×µéÀÓÀ» ¾Ë ¼ö ÀÖ¾ú´Ù. ¿ì¸° À̾߱⸦ ³ª´ ¼ø ¾ø¾ú´Ù. ³»°¡ ºñÇà±âÀÇ Ã¢¹®À¸·Î ¼Ò¸®¸¦ Áú·¶´Ù ÇÏ´õ¶óµµ ±×µéÀº Àý´ë ³» ¸ñ¼Ò¸®¸¦ µéÀ» ¼ö ¾ø¾úÀ» °ÍÀÌ´Ù. ±æ°ú ¿ì¸® ÁýÀÇ °æ°è¿¡ ¼ ÀÖ´ø ¿ïŸ¸®¸¦ È®ÀÎÇÒ ¼öµµ ÀÖ¾ú´Ù. »ó°ø¿¡¼ ±× ¿ïŸ¸®´Â ¸¶Ä¡ ÀÛÀº °¡Áö¸¦ Á¶½É½º·´°Ô ¿«¾îµÐ µí º¸¿´´Ù. ±×¸®°í ³»°¡ ¿©¸§¸¶´Ù Àܵð ±ð±â ±â°è·Î ÇÑ ÁÙ ÇÑ ÁÙ ¹Ð¸ç µ¹´ø °Å´ëÇÑ ¸¶´çµµ ÀÖ¾ú´Ù. Çϴÿ¡¼± ³ì»öÀÇ ¹Ù´Ù¸¸ÀÌ ÆîÃÄÁ® ÀÖ¾ú°í, ÀܵðÀÇ °¡´ÚÀ» ÇϳªÇϳª µé¿©´Ùº¼ ¼ö´Â ¾ø¾ú´Ù. ºñÇàÇÏ´Â ÀÏÀÌ ¸ÚÁö±ä ÇÏÁö¸¸, ±× ÅÍÄ¡ ¾Ø °íÀÇ ¼ø°£µéÀº ³Ê¹« ª¾Æ¼ ³»°Ô ¾ÈÁ¤°¨À» ÁÖÁö´Â ¸øÇß´Ù. ¸¶Ä¡ Àú³á ¹«·Æ ¾Æ¹öÁö¿Í ³»°¡ Âø·ú Á÷ÈÄ È°Áַθ¦ ´Þ·Á¿Í ºñÇà±â¸¦ °íÁ¤½ÃÅ°´ø ¶§Ã³·³ ³» ±â¾ï ¼Ó¿¡ ´Ü´ÜÈ÷ »õ°ÜÁ³´Ù µµ¸ÞÀÎ ÁÖµµ ¼³°è·Î Âø·úÇϱ⠵µ¸ÞÀÎ ÁÖµµ ¼³°è(DDD, Domain-Driven Design)¿¡ Ä£¼÷ÇØÁö´Â ¹æ¹ýÀº ¾î¸° ¾ÆÀÌÀÇ ºñÇà°ú ºñ½ÁÇÒÁöµµ ¸ð¸¥´Ù. Çϴÿ¡¼ÀÇ Ç³°æÀº Á¤¸» ¸ÚÁöÁö¸¸, ¶§·Ð ³Ê¹« ¾î»öÇÏ°í »õ·Î¿ö¼ ¿ì¸®°¡ Á¤È®ÀÌ ¾îµð¿¡ ÀÖ´ÂÁö ±ú´ÝÁö ¸øÇÒÁöµµ ¸ð¸¥´Ù. ÇÑ ÁöÁ¡¿¡¼ ´Ù¸¥ ÁöÁ¡À¸·Î À̸£´Â ¹æ¹ýÀº ½ÇÁ¦¿Í °Å¸®°¡ ÀÖ´Â µíÀÌ º¸ÀδÙ. DDDÀÇ ¼ºÀÎÀ¸·Î ¼ºÀåÇÑ À̵éÀº Ç×»ó ÀÚ½ÅÀÌ ¾îµð¿¡ ÀÖ´ÂÁö¸¦ ¾È´Ù. ±×µéÀº ¿À·¡ Àü¿¡ °æ·Î¸¦ ±×·Áµ×°í, Ç×ÇàÀ» À§ÇÑ ÀåÄ¡µµ ¿Ïº®È÷ Á¶Á¤Çص״Ù. ±²ÀåÈ÷ ¸¹Àº ¼öÀÇ ´Ù¸¥ »ç¶÷µéÀº Áö»ó¿¡ ³»·Á¿Â °Íó·³ ´À³¢Áö ¸øÇÑ´Ù. ¿©±â¼ ÇÊ¿äÇÑ ´É·ÂÀº 'Âø·úÇؼ ¹¾îµÎ±â'´Ù. ±×¸®°í ¿ì¸®°¡ ¾îµð¿¡ ÀÖ°í ¾îµð·Î °¡¾ßÇÒÁö ¾Æ´Â µ¥ µµ¿òÀÌ µÉ Áöµµµµ ÇÊ¿äÇÏ´Ù. ¿¡¸¯ ¿¡¹Ý½º´Â ¡ºµµ¸ÞÀÎ ÁÖµµ ¼³°è¡»¿¡¼ ½Ã´ë¸¦ ÃÊ¿ùÇÑ ¼º°ú¸¦ ´ã¾Æ³Â´Ù. ³ª´Â ¿¡¸¯ÀÇ ¾÷ÀûÀÌ ÇâÈÄ ¼ö½Ê ³â°£ °³¹ßÀÚ¿¡°Ô ½Ç¿ëÀûÀÎ ¹æ¹ýÀ» °¡À̵åÇÒ °ÍÀ̶ó´Â ºÐ¸íÇÑ ¹ÏÀ½ÀÌ ÀÖ´Ù. ´Ù¸¥ ÆÐÅÏó·³, ÀÌ´Â ÁöÇ¥·ÎºÎÅÍ ÇÑÂü À§¸¦ ³¯¾Æ¼ ³ÐÀº ½Ã¾ß¸¦ °®°Ô ÇØÁØ´Ù. ÇÏÁö¸¸ ¿ì¸®°¡ DDD¸¦ ±¸ÇöÇÏ´Â µ¥ ÇÊ¿äÇÑ ±âÃÊ ÀÛ¾÷À» ÀÌÇØÇÒ ¶© ±×º¸´Ù ´õ ¸¹Àº ¹®Á¦°¡ ¹ß»ýÇϸç, ¿ì¸®´Â Á» ´õ ¸¹Àº ¼öÀÇ »ó¼¼ÇÑ ¿¹Á¦¸¦ ã°Ô µÈ´Ù. ±×¸®°í ±×·² ¼ö ÀÖ´Ù¸é Áö»ó¿¡ Á» ´õ ¸Ó¹«¸¦ ¼ö ÀÖ°í, ¾î¼¸é ÁýÀ̳ª ´Ù¸¥ Àͼ÷ÇÑ Àå¼Ò·Î µå¶óÀ̺긦 ¶°³¯ ¼ö ÀÖ°Ô µÉÁöµµ ¸ð¸¥´Ù. ³» ¸ñÇ¥ Áß ÀϺδ ¿©·¯ºÐÀ» ºÎµå·´°Ô Âø·ú½ÃÅ°°í ºñÇà±â¸¦ Àß ¹¾îµÎ°í Àͼ÷ÇÑ Áö»óÀÇ °æ·Î¸¦ µû¶ó ÁýÀ¸·Î µ¹¾Æ°¥ ¼ö ÀÖ°Ô ÇÏ´Â ÀÏÀÌ´Ù. ±×·¡¼ Àͼ÷ÇÑ µµ±¸¿Í ±â¼úÀ» »ç¿ëÇÑ ¿¹Á¦¸¦ ÅëÇØ ¿©·¯ºÐÀÌ DDDÀÇ ±¸ÇöÀ» ÀÌÇØÇÒ ¼ö ÀÖµµ·Ï µ½°íÀÚ ÇÑ´Ù. ¶ÇÇÑ ¿ì¸® Áß ´©±¸µµ Ç×»ó Áý¿¡¸¸ ¸Ó¹° ¼ö´Â ¾ø±â ¶§¹®¿¡, ³ª´Â ¿©·¯ºÐÀÌ ¹ÛÀ¸·Î ³ª°¡ ¾î¼¸é ÀÌÁ¦²¯ º» Àû ¾ø´Â »õ·Î¿î °ø°£À¸·Î À̾îÁö´Â °æ·Î¸¦ ãµµ·Ï µµ¿ï ¿¹Á¤ÀÌ´Ù. ¶§·Ð ±×¿¡ À̸£´Â ±æÀÌ °¡Æĸ¦Áöµµ ¸ð¸£Áö¸¸, ¿Ã¹Ù¸¥ Àü¼úÀ» ÅÃÇÑ´Ù¸é ¾ÈÀüÀÌ º¸ÀåµÈ µµÀüµµ °¡´ÉÇÏ´Ù. ÀÌ ¿©ÇàÀ» ÅëÇØ ¿©·¯ºÐÀº ¿©·¯ µµ¸ÞÀÎ ¸ðµ¨À» ÅëÇÕÇÒ ¶§ ´ë¾ÈÀ¸·Î °í·ÁÇÒ ¼ö ÀÖ´Â ¾ÆÅ°ÅØó¿Í ÆÐÅÏÀ» ¹è¿ì°Ô µÈ´Ù. ÀÌ´Â ¿©·¯ºÐÀ» Áö±Ý±îÁö °Þ¾îº» Àû ¾ø´Â ¿µ¿ªÀ¸·Î ²ø¾îµéÀÏÁöµµ ¸ð¸¥´Ù. ¿©·¯ºÐÀº ¿©·¯ ÅëÇÕÀ» ÅëÇÑ Àü·«Àû ¸ðµ¨¸µÀÇ »ó¼¼ÇÑ ÀڷḦ ãÀ» ¼ö ÀÖÀ¸¸ç, ÀÚÀ²Àû(autonomous) ¼ºñ½º¸¦ °³¹ßÇÏ´Â ¹æ¹ý±îÁöµµ ¹è¿ï ¼ö ÀÖ´Ù. ³ªÀÇ ¸ñÇ¥´Â ¿©·¯ºÐÀÌ Âª°í ±ä ¿©ÇàÀ» ¸ðµÎ ¶°³¯ ¼ö ÀÖÀ¸¸ç ±æÀ» ÀҰųª ºÎ»ó´çÇÏÁö ¾Ê°í º¹ÀâÇÑ Æ®·¡Å·À» Çϸç ÁÖº¯À» ÀÚ¼¼È÷ Áñ±æ ¼ö ÀÖµµ·Ï µµ¿ï Áöµµ¸¦ Á¦°øÇÏ´Â °ÍÀÌ´Ù. ÁöÇüÀ» Áöµµ·Î ¿Å±â°í ºñÇàÀ» °èȹÇϱ⠿츰 ¼ÒÇÁÆ®¿þ¾î °³¹ßÇϸç Ç×»ó ¾î¶² ´ë»óÀ» ´Ù¸¥ ´ë»óÀ¸·Î ¸ÅÇÎ(map)ÇÏ°Ô µÈ´Ù. ¿ì¸° ¿ì¸®ÀÇ °´Ã¼¸¦ µ¥ÀÌÅͺ£À̽º·Î ¸ÅÇÎÇÑ´Ù. ¿ì¸° ¿ì¸®ÀÇ °´Ã¼¸¦ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º·Î ¸ÅÇÎÇÑ µÚ ´Ù½Ã ¸ÅÇÎÇØ °¡Á®¿Â´Ù. ¿ì¸° ¿ì¸®ÀÇ °´Ã¼¸¦ ¿©·¯ ¾ÖÇø®ÄÉÀÌ¼Ç Ç¥Çö(´Ù¸¥ ½Ã½ºÅÛ°ú ¾ÖÇø®ÄÉÀ̼ǿ¡¼ »ç¿ëÇÒÁöµµ ¸ð¸£´Â)À¸·Î ¸ÅÇÎÇؼ Àü´ÞÇÏ°í ¸ÅÇÎÇØ °¡Á®¿Â´Ù. ÀÌ·± ¸ðµç ¸ÅÇÎ °úÁ¤À» »ý°¢Çغ¸¸é, ¿¡¹Ý½ºÀÇ »óÀ§ ¼öÁØ ÆÐÅÏÀ» ±¸ÇöÀ¸·Î ¸ÅÇÎÇÏ·Á´Â ½Ãµµ´Â ÀÚ¿¬½º·± °á°ú´Ù. ¿©·¯ºÐÀÌ ÀÌ¹Ì ¿©·¯ ¹ø DDD¸¦ Àû¿ëÇغô٠ÇÏ´õ¶óµµ, ¾Æ¸¶ µµ¿òÀ» ¹ÞÀ» ¼ö ÀÖ´Â ºÎºÐÀÌ ³²¾ÆÀÖÀ» °ÍÀÌ´Ù. DDD´Â ¿ì¼± ±â¼úÀû µµ±¸ÀÇ ÁýÇÕÀ¸·Î¼ ¹Þ¾Æµé¿©Áø´Ù. ÀϺο¡¼± ÀÌ·± DDD Á¢±ÙÀ» DDD ¶óÀÌÆ®(DDD-Lite)¶ó°í ºÎ¸¥´Ù. ¿ì¸° ¿£ÅÍƼ(Entity)¿Í ¼ºñ½º(Service)¸¦ µµÀÔÇÏ°Ô µÇ¸ç, ¾î¼¸é ¿ë±â ÀÖ°Ô ¾Ö±×¸®°ÔÀÕ(Aggregate)ÀÇ ¼³°è¸¦ ½ÃµµÇÒ ¼öµµ ÀÖ°í, ¸®ÆÄÁöÅ丮(Repository)¸¦ È°¿ëÇØ ¿µ¼Ó¼ºÀ» ´Ù·ç·Á´Â ³ë·Âµµ ±â¿ïÀÌ°Ô µÈ´Ù. ÀÌ·± ÆÐÅÏÀº ¾î´À Á¤µµ Ä£¼÷Çϱ⠶§¹®¿¡ ½ÇÁ¦·Î À̸¦ »ç¿ëÇϱâ·Î °áÁ¤ÇÏ°Ô µÈ´Ù. ´õ ³ª¾Æ°¡, ±× °úÁ¤¿¡¼ °ª °´Ã¼¸¦ ÇÔ²² »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. ÀÌ ¸ðµÎ´Â °á±¹ Àü¼úÀû µðÀÚÀÎ ÆÐÅÏÀÇ ¹üÁÖ¿¡ ¼ÓÇϸç, ÀÌ´Â ±â¼úÀûÀÎ Ãø¸éÀÌ °ÇÏ´Ù. ¿Ü°ú ÀÇ»çÀÇ ¸Þ½ºÃ³·³, À̸¦ È°¿ëÇØ Áß¿äÇÑ ¼ÒÇÁÆ®¿þ¾î ¹®Á¦¸¦ ÇØ°áÇسª°¥ ¼ö ÀÖ´Ù. ÇÏÁö¸¸ ÀÌ¿Í °ü·ÃÇØ ´õ ¸¹Àº ÇнÀÀÌ ÇÊ¿äÇϸç, Àü¼úÀû µðÀÚÀÎÀÇ ´Ù¸¥ Ãø¸éµµ ÇÔ²² »ìÆìºÁ¾ß ÇÑ´Ù. ³ª´Â À̸¦ ±¸ÇöÀ¸·Î ¸ÅÇÎÇϵµ·Ï ÇÏ°Ú´Ù. ¿©·¯ºÐÀº Àü¼úÀû ¸ðµ¨¸µÀ» ³Ñ¾î¼ ³ª¾Æ°¡ º» ÀûÀÌ ÀÖÀ»±î? Àü¼úÀû µðÀÚÀÎ ÆÐÅÏÀ̶ó ºÒ¸®´Â DDDÀÇ '³ª¸ÓÁö ¹ÝÂÊ'¿¡ °üÇØ ¾Ë¾Æº¸°Å³ª ±íÀÌ °í¹ÎÇغ» ÀûÀÌ ÀÖÀ»±î? ¸¸¾à ¹Ù¿îµðµå ÄÁÅؽºÆ®(Bounded Context)³ª ÄÁÅؽºÆ® ¸Ê(Context Map)À» ³õÄ¡°í ÀÖ¾ú´Ù¸é, À¯ºñÄõÅͽº ¾ð¾î(Ubiquitous Language)µµ ¸¶Âù°¡ÁöÀÏ °ÍÀÌ´Ù. ¿¡¹Ý½º°¡ ¼ÒÇÁÆ®¿þ¾î °³¹ß Ä¿¹Â´ÏƼ¿¡ ±â¿©ÇÑ ´Ü ÇϳªÀÇ '¹ß¸í'À» ²Å¾Æ¾ß ÇÑ´Ù¸é, ±×°Ç ¹Ù·Î À¯ºñÄõÅͽº ¾ð¾î´Ù. Àû¾îµµ ±×´Â ¸ÕÁö ½×ÀÎ µðÀÚÀÎ ÁöÇýÀÇ Ã¢°í¿¡¼ À¯ºñÄõÅͽº ¾ð¾î¸¦ ²ø¾î³» ¹àÈ÷´Â ±â¿©¸¦ Çß´Ù. À̴ ƯÁ¤ ÇÙ½É ºñÁî´Ï½º µµ¸ÞÀÎÀÇ °³³ä°ú ¿ë¾î¸¦ ¼ÒÇÁÆ®¿þ¾î °³¹ß ¸ðµ¨·Î Æ÷ÂøÇØ¾ß ÇÏ´Â ÆÀÀ» À§ÇÑ ÆÐÅÏÀÌ´Ù. ÀÌ ¼ÒÇÁÆ®¿þ¾î ¸ðµ¨Àº ¸í»ç³ª Çü¿ë»ç³ª µ¿»ç¸¦ ºñ·ÔÇØ ÇÑ ¸í ÀÌ»óÀÇ ºñÁî´Ï½º µµ¸ÞÀÎ Àü¹®°¡°¡ Æ÷ÇÔµÈ °³¹ß ÆÀ¿¡¼ °ø½ÄÀûÀ¸·Î ¾ð±ÞµÇ´Â Á» ´õ dzºÎÇÑ Ç¥Çö±îÁö Æ÷ÇÔÇØ ¸¸µé¾îÁø´Ù. ÇÏÁö¸¸ ÀÌ ¸ðµ¨ÀÌ ´Ü¼øÈ÷ ´Ü¾îÀÇ ³ª¿¿¡ ÇÑÁ¤µÈ´Ù°í °á·Ð ³»¸°´Ù¸é ÀÌ´Â À߸øµÈ ÆÇ´ÜÀÌ´Ù. ¸»ÇÏ´Â ÀÌÀÇ ¸¶À½À» Åõ¿µÇÏ´Â ´Ù¸¥ ¸ðµç »ç¶÷ÀÇ ¾ð¾î¿Í ¸¶Âù°¡Áö·Î, À¯ºñÄõÅͽº ¾ð¾îµµ ¿©·¯ºÐÀÌ ÇÔ²² ÀÏÇÏ´Â ºñÁî´Ï½º µµ¸ÞÀÎ Àü¹®°¡ÀÇ ¸Ó¸´¼Ó ¸ðµ¨À» ¹Ý¿µÇÑ´Ù. µû¶ó¼, ¸ðµ¨ÀÌ µµ¸ÞÀÎÀÇ ¿ø¸®¸¦ Á¦´ë·Î ´ã°í ÀÖ´ÂÁö¸¦ È®ÀÎÇÒ ¼ÒÇÁÆ®¿þ¾î¿Í Å×½ºÆ®´Â ÀÌ ¾ð¾î¸¦ Æ÷ÂøÇÏ°í °í¼öÇØ¾ß Çϸç, ÆÀ ³»ºÎ¿¡¼µµ ÀÌ ¾ð¾î¸¦ °í¼öÇÏ·Á´Â ³ë·ÂÀ» ÇÔ²²ÇØ¾ß ÇÑ´Ù. ÀÌ ¾ð¾î´Â ¿©·¯ Àü·«Àû/Àü¼úÀû ¸ðµ¨¸µ ÆÐÅϵ鸸Š°¡Ä¡ ÀÖÀ¸¸ç, ¶§·Ð ´õ ¿À·¡ Áö¼ÓµÇ´Â °¡Ä¡¸¦ º¸À̱⵵ ÇÑ´Ù. °£´ÜÈ÷ ¸»ÇÏÀÚ¸é, DDD ¶óÀÌÆ®¸¦ µû¸£°Ô µÇ¸é ÃÖ¼ÒÇÑÀÇ µµ¸ÞÀÎ ¸ðµ¨¸¸À» ±¸ÃàÇÏ´Â °á°ú·Î À̾îÁø´Ù. ÀÌ´Â À¯ºñÄõÅͽº ¾ð¾î¿Í ¹Ù¿îµðµå ÄÁÅؽºÆ®¿Í ÄÁÅؽºÆ® ¸ÊÀ» ±×¸®´Â È°µ¿ÀÌ ÁÖ´Â °¡Ä¡°¡ ¸Å¿ì Å©±â ¶§¹®ÀÌ´Ù. ¿©·¯ºÐÀº ´Ü¼øÇÑ ÆÀÀÇ ¾ð¾î ÀÌ»óÀÇ ¹«¾ð°¡¸¦ ¾ò°Ô µÈ´Ù. ¸í½ÃÀûÀÎ ¹Ù¿îµðµå ÄÁÅؽºÆ® ¾È¿¡¼ µµ¸ÞÀÎ ¸ðµ¨·Î½á Ç¥ÇöµÇ´Â ÆÀÀÇ ¾ð¾î´Â ½ÇÁúÀûÀÎ ºñÁî´Ï½º °¡Ä¡¸¦ ´õÇØ ÁÙ »Ó¸¸ ¾Æ´Ï¶ó, ¿ì¸®¿¡°Ô ¿Ã¹Ù¸¥ ¼ÒÇÁÆ®¿þ¾î¸¦ °³¹ßÇÏ°í ÀÖ´Ù´Â È®½ÅÀ» ½É¾îÁØ´Ù. ±â¼úÀûÀÎ Ãø¸é¿¡¼µµ, Á» ´õ ºÐ¸íÇÏ°Ô ÇൿÀ» Á¤ÀÇÇÔÀ¸·Î½á ¼ø¼öÇÔÀ» ³ôÀÌ°í ¿À·ù ¹ß»ý °¡´É¼ºÀº ³·Ã߸ç, ´õ ³ªÀº ¸ðµ¨À» ¸¸µå´Â µ¥ µµ¿òÀ» ¹Þ°Ô µÈ´Ù. µû¶ó¼ ³ª´Â Àü·«Àû µðÀÚÀÎ ÆÐÅÏÀ» ÀÌÇØÇϱ⠽¬¿î ±¸Çö ¿¹Á¦·Î ¸ÅÇνÃÄѺ¸·Á ÇÑ´Ù. ÀÌ Ã¥Àº ¿©·¯ºÐÀÌ Àü·«Àû µðÀÚÀΰú Àü¼úÀû µðÀÚÀÎÀ̶õ µÎ Ãø¸é ¸ðµÎÀÇ ÀåÁ¡À» °æÇèÇÒ ¼ö ÀÖ´Â ¹æÇâÀ¸·Î DDDÀÇ ¿µ¿ªÀ» ¸ÅÇÎÇÑ´Ù. ¿©·¯ºÐÀº ¼¼ºÎ»çÇ×À» ÀÚ¼¼È÷ »ìÆ캸¸ç ºñÁî´Ï½ºÀû °¡Ä¡¿Í ±â¼úÀû °Á¡ÀÌ ¹«¾ùÀÎÁö ¸¸³ªº¸°Ô µÈ´Ù. ¿ì¸®°¡ DDD¿Í °ü·ÃÇØ ÇØ¿Ô´ø ¸ðµç ÀÏÀÌ ´Ü¼øÈ÷ Áö»ó¿¡ ¸Ó¹«´Â ¼öÁØÀ̶ó¸é ±²ÀåÈ÷ ½Ç¸Á½º·¯¿ï °ÍÀÌ´Ù. ¼¼ºÎ»çÇ׿¡¸¸ ³Ê¹« ¸ôÀÔÇÑ´Ù¸é Çϴÿ¡¼ ¹Ù¶óº» dz°æÀ» ÅëÇØ ¹è¿ï Á¡µµ ¸¹´Ù´Â »ç½ÇÀ» ÀØ°Ô µÈ´Ù. ¿©·¯ºÐ ÀÚ½ÅÀ» ¿ïÅüºÒÅüÇÑ Áö»ó¿¡¼ÀÇ ¿©Çà¿¡¸¸ ¹¾îµÎÁö´Â ¸»ÀÚ. Á¶Á¾»çÀÇ ÀÚ¸®¿¡ ¾É¾Æ¼ ³ôÀº °÷¿¡¼ÀÇ À̾߱⸦ µè±â À§ÇÑ µµÀüÀ¸·Î ¿ë°¨È÷ ³ª¾Æ°¡ÀÚ. ¹Ù¿îµðµå ÄÁÅؽºÆ®¿Í ÄÁÅؽºÆ® ¸Ê°ú ÇÔ²²ÇÏ´Â Àü·«Àû µðÀÚÀÎÀ¸·ÎÀÇ ºñÇàÀ» ¿¬½ÀÇÑ´Ù¸é, ÃÖ´ëÇÑÀÇ ÀÌÇظ¦ ¾ò°Ô µÆÀ» ¶§ÀÇ ¿õÀåÇÑ °üÁ¡À» °®°Ô µÉ Áغñ¸¦ ¸¶Ä¡°Ô µÉ °ÍÀÌ´Ù. ¿©·¯ºÐ ½º½º·Î°¡ DDD·ÎÀÇ ºñÇàÀ» Çس»°Ô µÆÀ» ¶§, ºñ·Î¼Ò ³ªÀÇ ¸ñÇ¥µµ ¿Ï¼ºµÇ°Ô µÈ´Ù.
¡Ú ¿Å±äÀÌÀÇ ¸» ¡Ú
¿¡¸¯ ¿¡¹Ý½º°¡ Àú¼úÇÑ ¡ºµµ¸ÞÀÎ ÁÖµµ ¼³°è¡»¶õ Ã¥ÀÌ ¼¼»ó¿¡ ³ª¿Â Áöµµ ¾î´Àµ¡ 10¿© ³âÀÌ Èê·¶´Ù. ¿£ÅÍƼ, °ª °´Ã¼, ¾Ö±×¸®°ÔÀÕ, ¼ºñ½º, À̺¥Æ®, ÆÑÅ丮, ¸®ÆÄÁöÅ丮 µîÀÇ ¿ä¼Ò¸¦ ¹ÙÅÁÀ¸·Î, Çö½Ç¿¡ µå·¯³ª´Â ¸ð½ÀÀ» µµ¸ÞÀÎ ¸ðµ¨·Î ¿Å±â´Â µðÀÚÀÎ °úÁ¤Àº ¼ÒÇÁÆ®¿þ¾î ¼³°è¿¡¼ °¡Àå ³Î¸® »ç¿ëµÇ´Â °·ÂÇÑ µµ±¸·Î ÀÚ¸®Àâ¾Ò´Ù. ÀüÅëÀûÀÎ °´Ã¼ÁöÇâ µðÀÚÀλӸ¸ ¾Æ´Ï¶ó ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö¿¡ À̸£±â±îÁö, µµ¸ÞÀÎ ÁÖµµ ¼³°è´Â ÇÁ·ÎÁ§Æ®¿¡¼ ¾î¶² ¾ð¾î³ª ÇÁ·¹ÀÓ¿öÅ©¸¦ ¼±ÅÃÇÏµç µðÀÚÀÎÀ» À§ÇØ ¹Ýµå½Ã Âü°íÇÏ°Ô µÇ´Â ÇʼöÀûÀÎ µµ±¸°¡ µÆ´Ù. ÇÏÁö¸¸ µµ¸ÞÀÎ ÁÖµµ ¼³°è °æÇèÀÌ ºÎÁ·ÇÑ ÆÀÀÌ µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ °³³äÀ» ½ÇÁ¦ ÇÁ·ÎÁ§Æ®¿¡ Àû¿ëÇϱ⿣ ¿¡¹Ý½ºÀÇ ¡ºµµ¸ÞÀÎ ÁÖµµ ¼³°è¡»´Â ³Ê¹« °³³ä¿¡ Ä¡ÁߵŠÀÖÀ¸¸ç Ãß»óÀûÀ̾ú´Ù. ¡ºµµ¸ÞÀÎ ÁÖµµ ¼³°è¡»¿¡¼± µµ¸ÞÀÎ ¸ðµ¨À» ±¸¼ºÇÏ´Â ¿ä¼Ò¸¦ ºÐ·ùÇÏ¸ç °³³äÀû Ư¡À» Àß Á¤¸®ÇÏ°í ÀÖÁö¸¸, À̸¦ Çö½Ç¿¡ Àû¿ëÇÏ´Â ¹æ¹ýÀ» ±¸Ã¼ÀûÀÎ ¿¹Á¦·Î ÃæºÐÈ÷ º¸¿©ÁÖÁø ¸øÇ߱⠶§¹®¿¡ ½ÇÁ¦ ÇÁ·ÎÁ§Æ®¿¡ Àû¿ëÇϱⰡ ¸Å¿ì ¾î·Á¿ü´Ù. ¡ºµµ¸ÞÀÎ ÁÖµµ ¼³°è¡»¸¦ ÀÐ°í ½ÇÁ¦ ¼ÒÇÁÆ®¿þ¾î ¼³°è °úÁ¤¿¡¼ È°¿ëÇغ¸·Á´Â °³¹ßÀÚµéÀº ±¸Ã¼Àû È°¿ë¹ýÀ» ¶°¿Ã¸®Áö ¸øÇØ Å« È¥¶õ¿¡ ºüÁö±â ½Ê»óÀ̾ú´Ù. ±× À¯¿ëÇÔ¿¡ ºñÇØ µµ¸ÞÀÎ ÁÖµµ ¼³°è°¡ ³Î¸® È°¿ëµÇÁö ¸øÇß´ø ÀÌÀ¯´Â ¡ºµµ¸ÞÀÎ ÁÖµµ ¼³°è ±¸Çö¡»°ú °°Àº ½Ç¿ëÀûÀÎ Áöħ¼°¡ ¾ÆÁ÷ µîÀåÇÏÁö ¾Ê¾Ò±â ¶§¹®ÀÌ ¾Æ´Ò±î. ¹Ý ¹ö³í(Vaughn Vernon)Àº ÀÌ Ã¥À» ÅëÇØ µµ¸ÞÀÎ ÁÖµµ ¼³°è¸¦ ¿£ÅÍÇÁ¶óÀÌÁî ¾ÖÇø®ÄÉÀÌ¼Ç ±¸Ãà ÇÁ·ÎÁ§Æ®¿¡¼ È°¿ëÇÏ´Â ¹æ¹ýÀ» Çö½ÇÀûÀÌ°í ½Ç¿ëÀûÀÎ ¿¹Á¦¸¦ ¹ÙÅÁÀ¸·Î ¼³¸íÇÑ´Ù. ±×¸®°í ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë¸¸À¸·Îµµ µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ °æÇèÀÌ ¾ø´Â µ¶ÀÚ±îÁö ±íÀÌ ÀÖ´Â ÀÌÇظ¦ ¾òÀ» ¼ö ÀÖµµ·Ï °³³äÀûÀ¸·Îµµ Ãæ½ÇÇÏ´Ù. ¿¡¹Ý½ºÀÇ Ã¥¿¡¼± ´Ù·çÁö ¸øÇß´ø CQRS³ª À̺¥Æ® ¼Ò½Ì µîÀÇ »õ·Î¿î ÁÖÁ¦¸¦ ÇÔ²² ¼³¸íÇÏ°í ÀÖÀ¸¸ç ½ºÇÁ¸µ, REST, NoSQL, µ¥ÀÌÅÍ ±×¸®µå µî°ú °°Àº ½Ç¿ëÀû ±â¼úÀ» ¹Ý¿µÇØ ¿¹Á¦¸¦ ±¸¼ºÇß´Ù. ÀÌ Ã¥À» ÀÐ°í ³ª¸é, µµ¸ÞÀÎ ÁÖµµ ¼³°è¸¦ ÇöÀç ÁøÇà ÁßÀÎ ÇÁ·ÎÁ§Æ®¿¡ ¹Ù·Î Àû¿ëÇÒ Áغñ°¡ µÇ¾úÀ½À» ±ú´Ý°Ô µÉ °ÍÀÌ´Ù. µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ º¹ÀâÇÏ°í Æø³ÐÀº ÁÖÁ¦¿¡ ´ëÇØ À̷аú ½ÇÁ¦¸¦ ¹¾îÁØ ÀÌ Ã¥Àº µ¶ÀÚ°¡ µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ ¸ðµç Áß¿ä °³³äÀ» ÀÚ½ÅÀÇ ÇÁ·ÎÁ§Æ®¿¡ Àû¿ëÇÒ ¼ö ÀÖ°Ô ¸¸µé¾îÁÙ °ÍÀ̶ó°í È®½ÅÇÑ´Ù.
1Àå DDD¸¦ ½ÃÀÛÇÏ¸ç ³ªµµ DDD ÇÒ ¼ö ÀÖÀ»±î? ³»°¡ ¿Ö DDD¸¦ ÇØ¾ß ÇÏÁö? __ºñÁî´Ï½º °¡Ä¡¸¦ Á¦°øÇÏ´Â °ÍÀº ¾î·Á¿ï ¼ö ÀÖ´Ù __DDD°¡ ÇØÁÙ ¼ö ÀÖ´Â ÀÏ __µµ¸ÞÀÎÀÇ º¹À⼺°ú ¾¾¸§Çϱ⠹«±â·ÂÁõ°ú ±â¾ï »ó½Ç __¿Ö ¹«±â·ÂÁõÀÌ ÀϾ´Â°¡ __¹«±â·ÂÁõÀÌ ´ç½ÅÀÇ ¸ðµ¨¿¡ ÇÑ ÀÏÀ» º¸¶ó. DDD´Â ¾î¶»°Ô Çϴ°¡? __À¯ºñÄõÅͽºÁö¸¸ º¸ÆíÀûÀÌÁö´Â ¾Ê´Ù. DDD¸¦ »ç¿ëÇÏ´Â µ¥¼ ¿À´Â ºñÁî´Ï½º °¡Ä¡ __1. Á¶Á÷ÀÌ ±× µµ¸ÞÀο¡ À¯¿ëÇÑ ¸ðµ¨À» ¾ò´Â´Ù. __2. Á¤±³ÇÏ°í Á¤È®ÇÏ°Ô ºñÁî´Ï½º¸¦ Á¤ÀÇÇÏ°í ÀÌÇØÇÑ´Ù. __3. µµ¸ÞÀÎ Àü¹®°¡°¡ ¼ÒÇÁÆ®¿þ¾î ¼³°è¿¡ ±â¿©ÇÑ´Ù. __4. »ç¿ëÀÚ °æÇèÀÌ °³¼±µÈ´Ù. __5. ¼ø¼öÇÑ ¸ðµ¨ ÁÖº¯¿¡ ¸íÈ®ÇÑ °æ°è°¡ »ý±ä´Ù. __6. ¿£ÅÍÇÁ¶óÀÌÁî ¾ÆÅ°ÅØóÀÇ ±¸¼ºÀÌ ÁÁ¾ÆÁø´Ù. __7. ¾ÖÀÚÀÏÇÏ°í, ¹Ýº¹ÀûÀÌ°í, Áö¼ÓÀûÀÎ ¸ðµ¨¸µÀÌ »ç¿ëµÈ´Ù. __8. Àü·«ÀûÀÎ µ¿½Ã¿¡ Àü¼úÀûÀÎ »õ·Î¿î µµ±¸°¡ Àû¿ëµÈ´Ù. DDD Àû¿ëÀÇ ³°ü __µµ¸ÞÀÎ ¸ðµ¨¸µÀÇ ÇÕ¸®È __DDD´Â ¹«°ÌÁö ¾Ê´Ù ¼Ò¼³°ú ÇÑ ¹Ù±¸´ÏÀÇ Çö½Ç ¸¶¹«¸® 2Àå µµ¸ÞÀÎ, ¼ºêµµ¸ÞÀÎ, ¹Ù¿îµðµå ÄÁÅؽºÆ® Å« ±×¸² __¼ºêµµ¸ÞÀΰú ¹Ù¿îµðµå ÄÁÅؽºÆ®ÀÇ È°¿ë __ÇÙ½É µµ¸ÞÀο¡ ÁýÁßÇÏ±â ¿Ö Àü·«Àû ¼³°è°¡ ¾öû³ª
...
°Ô ÇʼöÀûÀΰ¡ Çö½ÇÀÇ µµ¸ÞÀΰú ¼ºêµµ¸ÞÀÎ ¹Ù¿îµðµå ÄÁÅؽºÆ® ÀÌÇØÇϱâ __¸ðµ¨ ±× ÀÌ»óÀ» À§ÇØ __¹Ù¿îµðµå ÄÁÅؽºÆ®ÀÇ Å©±â __±â¼úÀû ÄÄÆ÷³ÍÆ®·Î Á¤·ÄÇϱ⠻ùÇà ÄÁÅؽºÆ® __Çù¾÷ ÄÁÅؽºÆ® __½Äº°ÀÚ¿Í ¾×¼¼½º ÄÁÅؽºÆ® __¾ÖÀÚÀÏ ÇÁ·ÎÁ§Æ® °ü¸® ÄÁÅؽºÆ® ¸¶¹«¸® 3Àå ÄÁÅؽºÆ® ¸Ê ÄÁÅؽºÆ® ¸ÊÀÌ ÇʼöÀûÀÎ ÀÌÀ¯ __ÄÁÅؽºÆ® ¸Ê ±×¸®±â __ÇÁ·ÎÁ§Æ®¿Í Á¶Á÷ °ü°è __¼¼ °¡Áö ÄÁÅؽºÆ®¸¦ ¸ÅÇÎÇϱâ __Çù¾÷ ÄÁÅؽºÆ® __¾ÖÀÚÀÏ ÇÁ·ÎÁ§Æ® °ü¸® ÄÁÅؽºÆ® __½Äº°ÀÚ¿Í ¾×¼¼½º ÄÁÅؽºÆ®ÀÇ ÅëÇÕ __Çù¾÷ ÄÁÅؽºÆ®¿Í ÅëÇÕ ¸¶¹«¸® 4Àå ¾ÆÅ°ÅØó ¼º°øÇÑ CIO¿ÍÀÇ ÀÎÅÍºä °èÃþ __ÀÇÁ¸¼º ¿ªÇà ¿ø¸® Çí»ç°í³¯ ¶Ç´Â Æ÷Æ®¿Í ¾î´ðÅÍ ¼ºñ½º ÁöÇâ REST: Ç¥Çö »óÅ Àü¼Û(Representational State Transfer) __½ºÅ×ÆÇ Æ¿ÄÚÇÁÀÇ Âü¿© __¾ÆÅ°ÅØó ½ºÅ¸ÀÏÀ¸·Î¼ÀÇ REST __·¹½ºÆ®Ç® HTTP ¼¹öÀÇ ÁÖ¿ä Ư¡ __·¹½ºÆ®Ç® HTTP Ŭ¶óÀ̾ðÆ®ÀÇ ÁÖ¿ä Ư¡ __REST¿Í DDD __¿Ö RESTÀΰ¡? Ä¿¸Çµå-Äõ¸® Ã¥ÀÓ ºÐ¸® __CQRSÀÇ ¿µ¿ª »ìÆ캸±â __°á±¹Àº ÀÏ°ü¼ºÀÌ À¯ÁöµÇ´Â Äõ¸® ¸ðµ¨ ´Ù·ç±â À̺¥Æ® ÁÖµµ ¾ÆÅ°ÅØó __ÆÄÀÌÇÁ¿Í ÇÊÅÍ __Àå±â ½ÇÇà ÇÁ·Î¼¼½º(»ç°¡¶ó ºÒ¸®´Â) __À̺¥Æ® ¼Ò½Ì µ¥ÀÌÅÍ Æк긯°ú ±×¸®µå ±â¹Ý ºÐ»ê ÄÄÇ»Æà __¿þ½º Àª¸®¾Ï½º ±â°í __µ¥ÀÌÅÍ º¹Á¦ __À̺¥Æ® ÁÖµµ Æк긯°ú µµ¸ÞÀÎ À̺¥Æ® __Áö¼ÓÀû Äõ¸® __ºÐ»ê ó¸® ¸¶¹«¸® 5Àå ¿£ÅÍƼ ¿£ÅÍƼ¸¦ »ç¿ëÇÏ´Â ÀÌÀ¯ °íÀ¯ ½Äº°ÀÚ __»ç¿ëÀÚ°¡ ½Äº°ÀÚ¸¦ Á¦°øÇÑ´Ù __¾ÖÇø®ÄÉÀ̼ÇÀÌ ½Äº°ÀÚ¸¦ »ý¼ºÇÑ´Ù __¿µ¼Ó¼º ¸ÞÄ¿´ÏÁòÀÌ ½Äº°ÀÚ¸¦ »ý¼ºÇÑ´Ù. __¶Ç ÇϳªÀÇ ¹Ù¿îµðµå ÄÁÅؽºÆ®°¡ ½Äº°ÀÚ¸¦ ÇÒ´çÇÑ´Ù __½Äº°ÀÚ »ý¼ºÀÇ ½ÃÁ¡ÀÌ ¹®Á¦°¡ µÉ ¶§ __´ë¸® ½Äº°ÀÚ __½Äº°ÀÚ ¾ÈÁ¤¼º ¿£ÅÍƼÀÇ ¹ß°ß°ú ±×µéÀÇ ³»ºÎÀûÀΠƯ¼º __¿£ÅÍƼ¿Í ¼Ó¼ºÀ» ¾Ë¾Æ³»±â __Digging for Essential Behavior __¿ªÇÒ°ú Ã¥ÀÓ __»ý¼º __À¯È¿¼º °Ë»ç ¸¶¹«¸® 6 °ª °´Ã¼ °ªÀÇ Æ¯Â¡ __ÃøÁ¤, ¼ö·®È, ¼³¸í __ºÒº¯¼º __°³³äÀû Àüü __´ëü¼º __°ª µî°¡¼º __ºÎÀÛ¿ëÀÌ ¾ø´Â ÇàÀ§ ¹Ì´Ï¸Ö¸®ÁòÀ¸·Î ÅëÇÕÇϱ⠰ªÀ¸·Î Ç¥ÇöµÇ´Â Ç¥ÁØ Å¸ÀÔ °ª °´Ã¼ÀÇ Å×½ºÆ® ±¸Çö °ª °´Ã¼ÀÇ ÀúÀå __µ¥ÀÌÅÍ ¸ðµ¨ ´©¼öÀÇ ºÎÁ¤Àû ¿µÇâÀ» °ÅºÎÇ϶ó __ORM°ú ´ÜÀÏ °ª °´Ã¼ __ORM°ú ÇÑ ¿·Î Á÷·ÄȵǴ ¿©·¯ °ª __ORM°ú µ¥ÀÌÅͺ£À̽º ¿£ÅÍƼ·Î Áö¿øµÇ´Â ¿©·¯ °ª __ORM°ú Á¶ÀÎ Å×À̺í·Î Áö¿øµÇ´Â ¿©·¯ °ª __ORM°ú »óÅ·μÀÇ ¿°ÅÇü °´Ã¼ ¸¶¹«¸® 7 ¼ºñ½º µµ¸ÞÀÎ ¼ºñ½º¶õ ¹«¾ùÀΰ¡(ÇÏÁö¸¸ ¸ÕÀú µµ¸ÞÀÎ ¼ºñ½º°¡ ¾Æ´Ñ °ÍÀº ¹«¾ùÀΰ¡) ¼ºñ½º°¡ ÇÊ¿äÇÑÁö È®ÀÎÇÏÀÚ µµ¸ÞÀο¡¼ ¼ºñ½º¸¦ ¸ðµ¨¸µÇϱâ __ºÐ¸®µÈ ÀÎÅÍÆäÀ̽º°¡ ²À ÇÊ¿äÇÒ±î __°è»ê ÇÁ·Î¼¼½º __º¯È¯ ¼ºñ½º __µµ¸ÞÀÎ ¼ºñ½ºÀÇ ¹Ì´Ï °èÃþ »ç¿ëÇϱ⠼ºñ½ºÀÇ Å×½ºÆ® ¸¶¹«¸® 8 µµ¸ÞÀÎ À̺¥Æ® ¾ðÁ¦ ±×¸®°í ¿Ö µµ¸ÞÀÎ À̺¥Æ®¸¦ »ç¿ëÇÒ±î? À̺¥Æ®ÀÇ ¸ðµ¨¸µ __¾Ö±×¸®°ÔÀÕÀÇ Æ¯¼º°ú ÇÔ²²Çϱâ __½Äº°ÀÚ µµ¸ÞÀÎ ¸ðµ¨¿¡¼ À̺¥Æ®¸¦ ¹ßÇàÇϱâ __¹ßÇàÀÚ __±¸µ¶ÀÚ ´º½º¸¦ ¿ø°Ý ¹Ù¿îµðµå ÄÁÅؽºÆ®·Î ÀüÆÄÇϱâ __¸Þ½Ã¡ ÀÎÇÁ¶óÀÇ ÀÏ°ü¼º __ÀÚÄ¡ ¼ºñ½º¿Í ½Ã½ºÅÛ __Áö¿¬½Ã°£ Çã¿ë À̺¥Æ® ÀúÀå¼Ò ÀúÀåµÈ À̺¥Æ®ÀÇ Àü´ÞÀ» À§ÇÑ ¾ÆÅ°ÅØó ½ºÅ¸ÀÏ __·¹½ºÆ®Ç® ¸®¼Ò½º·Î½á ¾Ë¸²À» ¹ßÇàÇϱâ __¸Þ½Ã¡ ¹Ìµé¿þ¾î¸¦ ÅëÇÑ ¾Ë¸² ¹ßÇà ±¸Çö __NotificationLogÀÇ ¹ßÇà __¸Þ½ÃÁö¿¡ ±â¹ÝÇÑ ¾Ë¸² ¹ßÇàÇϱ⠸¶¹«¸® 9 ¸ðµâ ¸ðµâ·Î ¼³°èÇϱ⠱⺻ ¸ðµâ ¸í¸í ±ÔÄ¢ ¸ðµ¨À» À§ÇÑ ¸ðµâ ¸í¸í ±ÔÄ¢ ¾ÖÀÚÀÏ ÇÁ·ÎÁ§Æ® °ü¸® ÄÁÅؽºÆ®ÀÇ ¸ðµâ ´Ù¸¥ °èÃþ ¼ÓÀÇ ¸ðµâ ¹Ù¿îµðµå ÄÁÅؽºÆ®º¸´Ù ¸ðµâ ¸¶¹«¸® 10 ¾Ö±×¸®°ÔÀÕ ½ºÅ©·³ ÇÙ½É µµ¸ÞÀο¡¼ ¾Ö±×¸®°ÔÀÕ »ç¿ëÇϱâ __ù ¹ø° ½Ãµµ: Å« Ŭ·¯½ºÅÍÀÇ ¾Ö±×¸®°ÔÀÕ __µÎ ¹ø° ½Ãµµ: ´Ù¼öÀÇ ¾Ö±×¸®°ÔÀÕ ±ÔÄ¢: ÁøÂ¥ °íÁ¤ÀÚ¸¦ ÀÏ°ü¼º °æ°è ¾È¿¡ ¸ðµ¨¸µÇ϶ó ±ÔÄ¢: ÀÛÀº ¾Ö±×¸®°ÔÀÕÀ¸·Î ¼³°èÇ϶ó __À¯½ºÄÉÀ̽º¸¦ ÀüºÎ ¹ÏÁö´Â ¸»¶ó ±ÔÄ¢: ID·Î ´Ù¸¥ ¾Ö±×¸®°ÔÀÕÀ» ÂüÁ¶Ç϶ó __¾Ö±×¸®°ÔÀÕÀÌ ID ÂüÁ¶¸¦ ÅëÇØ ¼·Î ÇÔ²² µ¿ÀÛÇϵµ·Ï Çغ¸ÀÚ __¸ðµ¨ Ž»ö __È®À强°ú ºÐ»ê ±ÔÄ¢: °æ°èÀÇ ¹Û¿¡¼± °á°úÀû ÀÏ°ü¼ºÀ» »ç¿ëÇ϶ó __´©°¡ ÇØ¾ß ÇÏ´Â ÀÏÀÎÁö È®ÀÎÇÏÀÚ ±ÔÄ¢À» ¾î°Ü¾ß ÇÏ´Â ÀÌÀ¯ __ù ¹ø° ÀÌÀ¯: »ç¿ëÀÚ ÀÎÅÍÆäÀ̽ºÀÇ ÆíÀÇ __µÎ ¹ø° ÀÌÀ¯: ±â¼úÀû ¸ÞÄ¿´ÏÁòÀÇ ºÎÁ· __¼¼ ¹ø° ÀÌÀ¯: ±Û·Î¹ú Æ®·£Àè¼Ç __³× ¹ø° ÀÌÀ¯: Äõ¸® ¼º´É __±ÔÄ¢À» ÁöÅ°±â ¹ß°ßÀ» ÅëÇØ ÅëÂû ¾ò±â __¼³°è¸¦ ´Ù½Ã ÇÑ ¹ø »ý°¢Çغ¸ÀÚ __¾Ö±×¸®°ÔÀÕ ºñ¿ëÀÇ ¿¹Ãø __ÀϹÝÀûÀÎ »ç¿ë ½Ã³ª¸®¿À __¸Þ¸ð¸® ¼Òºñ __¶Ç ´Ù¸¥ ¼³°è ´ë¾È »ìÆ캸±â __°á°úÀû ÀÏ°ü¼ºÀÇ ±¸Çö __ÀÌ´Â ÆÀ¿øÀÌ ÇÒ ÀÏÀΰ¡? __°áÁ¤ÀÇ ½Ã°£ ±¸Çö __°íÀ¯ ID¿Í ·çÆ® ¿£ÅÍƼ¸¦ »ý¼ºÇ϶ó __°ª °´Ã¼ ÆÄÆ®¸¦ ¼±È£Ç϶ó __¡®µ¥¸ÞÅ׸£ÀÇ ¹ýÄ¢¡¯°ú ¡®¹¯Áö ¸»°í ½ÃÄѶ󡯸¦ »ç¿ëÇϱâ __³«°üÀû µ¿½Ã¼º __ÀÇÁ¸¼º ÁÖÀÔÀ» ÇÇÇÏ¶ó ¸¶¹«¸® 11 ÆÑÅ丮 µµ¸ÞÀÎ ¸ðµ¨ ³»ÀÇ ÆÑÅ丮 ¾Ö±×¸®°ÔÀÕ ·çÆ®»óÀÇ ÆÑÅ丮 ¸Þ¼Òµå __CalendarEntry ÀνºÅϽº »ý¼ºÇϱâ __Discussion ÀνºÅϽº »ý¼ºÇϱ⠼ºñ½ºÀÇ ÆÑÅ丮 ¸¶¹«¸® 12 ¸®ÆÄÁöÅ丮 Ä÷º¼Ç ÁöÇâ ¸®ÆÄÁöÅ丮 __ÇÏÀ̹ö³×ÀÌÆ® ±¸Çö __ž¸µÅ© ±¸Çö¿¡ ´ëÇÑ °í·Á ¿µ¼Ó¼º ÁöÇâÀÇ ¸®ÆÄÁöÅ丮 __ÄÚÈ÷¾î·±½º ±¸Çö __¸ù°íDB ±¸Çö Ãß°¡ÀûÀÎ Çൿ Æ®·£Àè¼ÇÀÇ °ü¸® __°æ°í ŸÀÔ °èÃþ±¸Á¶ ¸®ÆÄÁöÅ丮 ´ë µ¥ÀÌÅÍ ¾×¼¼½º °´Ã¼ ¸®ÆÄÁöÅ丮ÀÇ Å×½ºÆ® __Àθ޸𸮠±¸ÇöÀ¸·Î Å×½ºÆ®Çϱ⠸¶¹«¸® 13 ¹Ù¿îµðµå ÄÁÅؽºÆ®ÀÇ ÅëÇÕ ÅëÇÕÀÇ ±âº» __ºÐ»ê ½Ã½ºÅÛÀº ±Ùº»ÀûÀ¸·Î ´Ù¸£´Ù __½Ã½ºÅÛ °æ°è¿¡ °ÉÄ£ Á¤º¸ÀÇ ±³È¯ ·¹½ºÆ®Ç® ¸®¼Ò½º¸¦ »ç¿ëÇÑ ÅëÇÕ __·¹½ºÆ®Ç® ¸®¼Ò½ºÀÇ ±¸Çö __ºÎÆÐ ¹æÁö °èÃþÀ» ÅëÇÑ REST Ŭ¶óÀ̾ðÆ®ÀÇ ±¸Çö ¸Þ½Ã¡À» »ç¿ëÇÑ ÅëÇÕ __Á¦Ç° ¼ÒÀ¯ÀÚ¿Í ÆÀ ¸â¹öÀÇ Á¤º¸¸¦ °è¼ÓÇؼ Á¦°ø¹Þ´Â °Í __´ç½ÅÀº Ã¥ÀÓÀ» °¨´çÇÒ ¼ö Àִ°¡ __Àå±â ½ÇÇà ÇÁ·Î¼¼½º¿Í Ã¥ÀÓÀÇ È¸ÇÇ __ÇÁ·Î¼¼½º »óÅ ¸Ó½Å°ú ŸÀӾƿô Æ®·¡Ä¿ __Á» ´õ º¹ÀâÇÑ ÇÁ·Î¼¼½º ¼³°èÇϱâ __¸Þ½Ã¡À̳ª ½Ã½ºÅÛÀ» È°¿ëÇÒ ¼ö ¾øÀ» ¶§ ¸¶¹«¸® 14 ¾ÖÇø®ÄÉÀÌ¼Ç »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º __µµ¸ÞÀÎ °´Ã¼ÀÇ ·»´õ¸µ __¾Ö±×¸®°ÔÀÕ ÀνºÅϽº·ÎºÎÅÍ µ¥ÀÌÅÍ Àü¼Û °´Ã¼¸¦ ·»´õ¸µÇϱâ __¾Ö±×¸®°ÔÀÕ ³»ºÎ »óŸ¦ ¹ßÇàÇϱâ À§ÇØ ÁßÀçÀÚ¸¦ »ç¿ëÇÏÀÚ __µµ¸ÞÀÎ ÆäÀÌ·Îµå °´Ã¼·ÎºÎÅÍ ¾Ö±×¸®°ÔÀÕ ÀνºÅϽº¸¦ ·»´õ¸µÇ϶ó. __¾Ö±×¸®°ÔÀÕ ÀνºÅϽºÀÇ »óÅ ǥÇö __À¯½ºÄÉÀ̽º ÃÖÀû ¸®ÆÄÁöÅ丮 Äõ¸® __´Ù¼öÀÇ °³º° Ŭ¶óÀ̾ðÆ®¸¦ ó¸®Çϱâ __º¯È¯(Rendition) ¾î´ðÅÍ¿Í »ç¿ëÀÚ ÆíÁýÀÇ Ã³¸® ¾ÖÇø®ÄÉÀÌ¼Ç ¼ºñ½º __¾ÖÇø®ÄÉÀÌ¼Ç ¼ºñ½º ¿¹Á¦ __°áÇÕÀÌ ºÐ¸®µÈ ¼ºñ½º Ãâ·Â ¿©·¯ ¹Ù¿îµðµå ÄÁÅؽºÆ® ¹±â ÀÎÇÁ¶ó ¿£ÅÍÇÁ¶óÀÌÁî ÄÄÆ÷³ÍÆ® ÄÁÅ×ÀÌ³Ê ¸¶¹«¸® 15 ¾Ö±×¸®°ÔÀÕ°ú À̺¥Æ® ¼Ò½Ì: A+ES ¾ÖÇø®ÄÉÀÌ¼Ç ¼ºñ½ºÀÇ ³»ºÎ Ä¿¸Çµå Çڵ鷯 ¶÷´Ù ±¸¹® µ¿½Ã¼º Á¦¾î A+ESÀÇ ±¸Á¶Àû ÀÚÀ¯ ¼º´É À̺¥Æ® ÀúÀå¼ÒÀÇ ±¸Çö °ü°èÇüÀ¸·Î ÀúÀåÇϱ⠺í·Ó(BLOB)À¸·Î ÀúÀåÇϱâ ÁýÁßµÈ ¾Ö±×¸®°ÔÀÕ Àб⠸𵨠Åõ¿µ ¾Ö±×¸®°ÔÀÕ ¼³°è¿Í ÇÔ²² »ç¿ëÇϱâ À̺¥Æ® °È Áö¿ø µµ±¸¿Í ÆÐÅÏ __À̺¥Æ® Á÷·Äȱâ __À̺¥Æ® ºÒº¯¼º __°ª °´Ã¼ °è¾à »ý¼º ´ÜÀ§ Å×½ºÆ®¿Í ¸í¼¼ ÇÔ¼öÇü ¾ð¾î¿¡¼ÀÇ À̺¥Æ® ¼Ò½Ì Âü°í ¹®Çå
¹Ý ¹ö³í [Àú]
¹Ý ¹ö³í(Vaughn Vernon)Àº ¼ÒÇÁÆ®¿þ¾î µðÀÚÀΰú °³¹ß, ¾ÆÅ°ÅØó¿¡¼ 25³â ÀÌ»óÀÇ °æ·ÂÀ» ½×¾Æ¿Â ¼÷·ÃµÈ ¼ÒÇÁÆ®¿þ¾î ÀåÀÎÀÌ´Ù. Çõ½ÅÀûÀÎ ¹æ¹ýÀ» »ç¿ëÇØ ¼ÒÇÁÆ®¿þ¾îÀÇ µðÀÚÀΰú ±¸ÇöÀ» ´Ü¼øÈÇÒ ¼ö ÀÖ´Â ¸®´õ´Ù. 1980³â´ëºÎÅÍ °´Ã¼ÁöÇâ ¾ð¾î¸¦ »ç¿ëÇÑ ÇÁ·Î±×·¡¹ÖÀ» ½ÃÀÛÇß°í, 1990³â´ë Ãʱ⠽º¸ôÅå µµ¸ÞÀÎ ¸ðµ¨¸µºÎÅÍ µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ °³³äÀ» Àû¿ëÇϱ⠽ÃÀÛÇß´Ù. ³ÐÀº ºñÁî´Ï½º µµ¸ÞÀο¡ °ÉÃÄ °æÇèÀ» ½×¾Ò°í, ÀÌ·± µµ¸ÞÀο¡´Â ¿ìÁÖÇ×°ø, ȯ°æ, Áö¸®Á¤º¸, º¸Çè, ÀÇ·á, Åë½Å µîÀÌ Æ÷ÇԵȴÙ. ¶ÇÇÑ Àç»ç¿ë °¡´ÉÇÑ ÇÁ·¡ÀÓ¿öÅ©³ª ¶óÀ̺귯¸®¸¦ ¸¸µé°í °³¹ßÀ» °¡¼Ó½ÃÅ°´Â µµ±¸¸¦ ±¸ÇöÇÏ´Â µîÀÇ ±â¼úÀû ³ë·ÂÀ» °è¼ÓÇØ¿Ô´Ù. ±¹Á¦ÀûÀÎ ÄÁ¼³ÆÃÀ̳ª °¿¬À» ÁøÇàÇØ¿Ô°í, ¿©·¯ ´ë·ú¿¡¼ µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ ±¸Çö¿¡ °üÇÑ ¼ö¾÷À» °³¼³Çß´Ù. www.VaughnVernon.co¿¡¼ ±ÙȲÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù.
À±Ã¢¼®, Ȳ¿¹Áø [Àú]
Àüü 0°³ÀÇ
±¸¸ÅÈıⰡ ÀÖ½À´Ï´Ù.
ÀÎÅÍÆÄÅ©µµ¼´Â °í°´´ÔÀÇ ´Ü¼ø º¯½É¿¡ ÀÇÇÑ ±³È¯°ú ¹ÝÇ°¿¡ µå´Â ºñ¿ëÀº °í°´´ÔÀÌ ÁöºÒÄÉ µË´Ï´Ù.
´Ü, »óÇ°À̳ª ¼ºñ½º ÀÚüÀÇ ÇÏÀÚ·Î ÀÎÇÑ ±³È¯ ¹× ¹ÝÇ°Àº ¹«·á·Î ¹ÝÇ° µË´Ï´Ù.
±³È¯ ¹× ¹ÝÇ°ÀÌ °¡´ÉÇÑ °æ¿ì
»óÇ°À» °ø±Þ ¹ÞÀº ³¯·ÎºÎÅÍ 7ÀÏÀ̳» °¡´É
°ø±Þ¹ÞÀ¸½Å »óÇ°ÀÇ ³»¿ëÀÌ Ç¥½Ã, ±¤°í ³»¿ë°ú ´Ù¸£°Å³ª ´Ù¸£°Ô ÀÌÇàµÈ °æ¿ì¿¡´Â °ø±Þ¹ÞÀº ³¯·ÎºÎÅÍ 3°³¿ù À̳»,
ȤÀº ±×»ç½ÇÀ» ¾Ë°Ô µÈ ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏ À̳»
»óÇ°¿¡ ¾Æ¹«·± ÇÏÀÚ°¡ ¾ø´Â °æ¿ì ¼ÒºñÀÚÀÇ °í°´º¯½É¿¡ ÀÇÇÑ ±³È¯Àº »óÇ°ÀÇ Æ÷Àå»óÅ µîÀÌ ÀüÇô ¼Õ»óµÇÁö ¾ÊÀº °æ¿ì¿¡ ÇÑÇÏ¿© °¡´É
±³È¯ ¹× ¹ÝÇ°ÀÌ ºÒ°¡´ÉÇÑ °æ¿ì
±¸¸ÅÈ®Á¤ ÀÌÈÄ(¿ÀǸ¶ÄÏ»óÇ°¿¡ ÇÑÇÔ)
°í°´´ÔÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¸ê½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì
(´Ü, »óÇ°ÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÏ¿© Æ÷Àå µîÀ» ÈѼÕÇÑ °æ¿ì´Â Á¦¿Ü)
½Ã°£ÀÌ Áö³²¿¡ µû¶ó ÀçÆǸŰ¡ °ï¶õÇÒ Á¤µµ·Î ¹°Ç°ÀÇ °¡Ä¡°¡ ¶³¾îÁø °æ¿ì
Æ÷Àå °³ºÀµÇ¾î »óÇ° °¡Ä¡°¡ ÈÑ¼ÕµÈ °æ¿ì
´Ù¹è¼ÛÁöÀÇ °æ¿ì ¹ÝÇ° ȯºÒ
´Ù¹è¼ÛÁöÀÇ °æ¿ì ´Ù¸¥ Áö¿ªÀÇ ¹ÝÇ°À» µ¿½Ã¿¡ ÁøÇàÇÒ ¼ö ¾ø½À´Ï´Ù.
1°³ Áö¿ªÀÇ ¹ÝÇ°ÀÌ ¿Ï·áµÈ ÈÄ ´Ù¸¥ Áö¿ª ¹ÝÇ°À» ÁøÇàÇÒ ¼ö ÀÖÀ¸¹Ç·Î, ÀÌÁ¡ ¾çÇØÇØ Áֽñ⠹ٶø´Ï´Ù.
Áß°í»óÇ°ÀÇ ±³È¯
Áß°í»óÇ°Àº Á¦ÇÑµÈ Àç°í ³»¿¡¼ ÆǸŰ¡ ÀÌ·ç¾îÁö¹Ç·Î, ±³È¯Àº ºÒ°¡´ÉÇÕ´Ï´Ù.
¿ÀǸ¶ÄÏ »óÇ°ÀÇ È¯ºÒ
¿ÀǸ¶ÄÏ»óÇ°¿¡ ´ëÇÑ Ã¥ÀÓÀº ¿øÄ¢ÀûÀ¸·Î ¾÷ü¿¡°Ô ÀÖÀ¸¹Ç·Î, ±³È¯/¹ÝÇ° Á¢¼ö½Ã ¹Ýµå½Ã ÆǸÅÀÚ¿Í ÇùÀÇ ÈÄ ¹ÝÇ° Á¢¼ö¸¦ ÇϼžßÇϸç,
¹ÝÇ°Á¢¼ö ¾øÀÌ ¹Ý¼ÛÇϰųª, ¿ìÆíÀ¸·Î º¸³¾ °æ¿ì »óÇ° È®ÀÎÀÌ ¾î·Á¿ö ȯºÒÀÌ ºÒ°¡´ÉÇÒ ¼ö ÀÖÀ¸´Ï À¯ÀÇÇϽñ⠹ٶø´Ï´Ù.
¹è¼Û¿¹Á¤ÀÏ ¾È³»
ÀÎÅÍÆÄÅ© µµ¼´Â ¸ðµç »óÇ°¿¡ ´ëÇØ ¹è¼Û¿Ï·á¿¹Á¤ÀÏÀ» À¥»çÀÌÆ®¿¡ Ç¥½ÃÇÏ°í ÀÖ½À´Ï´Ù.
<ÀÎÅÍÆÄÅ© Á÷¹è¼Û »óÇ°>
»óÇ°Àº ¿ù~Åä¿äÀÏ ¿ÀÀü 10½Ã ÀÌÀü ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ´çÀÏ Ãâ°í/´çÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óÇ°ÀÔ´Ï´Ù.
»óÇ°Àº ¼¿ïÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀº ´çÀÏ Ãâ°í/ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇϸç,
¼¿ï¿ÜÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀÇ °æ¿ì´Â ¿ÀÈÄ 6½Ã±îÁö ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óÇ°ÀÔ´Ï´Ù.
(´Ü, ¿ù¿äÀÏÀº 12½Ã±îÁö ÁÖ¹®¿¡ ÇÑÇÔ)
»óÇ°Àº, ÀÔ°í¿¹Á¤ÀÏ(Á¦Ç°Ãâ½ÃÀÏ)+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.
~
»óÇ°Àº À¯ÅëƯ¼º»ó ÀÎÅÍÆÄÅ©¿¡¼ Àç°í¸¦ º¸À¯ÇÏÁö ¾ÊÀº »óÇ°À¸·Î
ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø±âÁØÃâ°íÀÏ:ÀÎÅÍÆÄÅ©°¡ »óÇ°À» ¼ö±ÞÇÏ¿© ¹°·ùâ°í¿¡¼ Æ÷Àå/Ãâ°íÇϱâ±îÁö ¼Ò¿äµÇ´Â ½Ã°£
<¾÷ü Á÷Á¢¹è¼Û/¿ÀǸ¶ÄÏ »óÇ°>
~
»óÇ°Àº ¾÷ü°¡ ÁÖ¹®À» È®ÀÎÇÏ°í, Ãâ°íÇϱâ±îÁö °É¸®´Â ½Ã°£ÀÔ´Ï´Ù.
ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(2ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø5ÀÏÀ̳» Ãâ°í°¡ ½ÃÀÛµÇÁö ¾ÊÀ»½Ã, ¿ÀǸ¶ÄÏ »óÇ°Àº ÀÚµ¿À¸·Î ÁÖ¹®ÀÌ Ãë¼ÒµÇ¸ç, °í°´´Ô²² Ç°Àýº¸»ó±ÝÀ» Áö±ÞÇØ µå¸³´Ï´Ù.
¹è¼Ûºñ ¾È³»
µµ¼(Áß°íµµ¼ Æ÷ÇÔ)¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
À½¹Ý/DVD¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
ÀâÁö/¸¸È/±âÇÁÆ®¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í À½¹Ý/DVD¸¦ ÇÔ²² ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø 1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í ÀâÁö/¸¸È/±âÇÁÆ®/Áß°íÁ÷¹è¼Û»óÇ°À» ÇÔ²² ±¸¸ÅÇϽøé : 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
¾÷üÁ÷Á¢¹è¼Û»óÇ°À» ±¸¸Å½Ã : ¾÷üº°·Î »óÀÌÇÑ ¹è¼Ûºñ Àû¿ë
* ¼¼Æ®»óÇ°ÀÇ °æ¿ì ºÎºÐÃë¼Ò ½Ã Ãß°¡ ¹è¼Ûºñ°¡ ºÎ°úµÉ ¼ö ÀÖ½À´Ï´Ù.
* ºÏÄ«Æ®¿¡¼ ¹è¼Ûºñ¾ø¾Ö±â ¹öÆ°À» Ŭ¸¯Çϼż, µ¿ÀϾ÷ü»óÇ°À» Á¶±Ý ´õ ±¸¸ÅÇϽøé, ¹è¼Ûºñ¸¦ Àý¾àÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
Çؿܹè¼Û ¾È³»
ÀÎÅÍÆÄÅ©µµ¼¿¡¼´Â ±¹³»¿¡¼ ÁÖ¹®ÇϽðųª ÇØ¿Ü¿¡¼ ÁÖ¹®ÇÏ¿© ÇØ¿Ü·Î ¹è¼ÛÀ» ¿øÇÏ½Ç °æ¿ì DHL°ú Ư¾àÀ¸·Î Ã¥Á¤µÈ ¿ä±ÝÇ¥¿¡
ÀÇÇØ °³ÀÎÀÌ ÀÌ¿ëÇÏ´Â °æ¿ìº¸´Ù ¹è¼Û¿ä±ÝÀ» Å©°Ô ³·Ã߸ç DHL(www.dhl.co.kr)·Î Çؿܹè¼Û ¼ºñ½º¸¦ Á¦°øÇÕ´Ï´Ù.
Çؿܹè¼ÛÀº µµ¼/CD/DVD »óÇ°¿¡ ÇÑÇØ ¼ºñ½ºÇÏ°í ÀÖÀ¸¸ç, ´Ù¸¥ »óÇ°À» ºÏÄ«Æ®¿¡ ÇÔ²² ´ãÀ¸½Ç °æ¿ì Çؿܹè¼ÛÀÌ ºÒ°¡ÇÕ´Ï´Ù.
ÇØ¿ÜÁÖ¹®¹è¼Û ¼ºñ½º´Â ÀÎÅÍÆÄÅ© µµ¼ ȸ¿ø °¡ÀÔÀ» Çϼž߸¸ ½Åû °¡´ÉÇÕ´Ï´Ù.
¾Ë¾ÆµÎ¼¼¿ä!!!
µµ¸Å»ó ¹× Á¦ÀÛ»ç »çÁ¤¿¡ µû¶ó Ç°Àý/ÀýÆÇ µîÀÇ »çÀ¯·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
¿ÀǸ¶ÄϾ÷üÀÇ ¹è¼ÛÁö¿¬½Ã ÁÖ¹®ÀÌ ÀÚµ¿À¸·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
Ãâ°í°¡´É ½Ã°£ÀÌ ¼·Î ´Ù¸¥ »óÇ°À» ÇÔ²² ÁÖ¹®ÇÒ °æ¿ì Ãâ°í°¡´É ½Ã°£ÀÌ °¡Àå ±ä ±âÁØÀ¸·Î ¹è¼ÛµË´Ï´Ù.
À¯ÅëÀÇ Æ¯¼º»ó Ãâ°í±â°£Àº ¿¹Á¤º¸´Ù ¾Õ´ç°ÜÁö°Å³ª ´ÊÃçÁú ¼ö ÀÖ½À´Ï´Ù.
Åùè»ç ¹è¼ÛÀÏÀÎ ¼¿ï ¹× ¼öµµ±ÇÀº 1~2ÀÏ, Áö¹æÀº 2~3ÀÏ, µµ¼, »ê°£, ±ººÎ´ë´Â 3ÀÏ ÀÌ»óÀÇ ½Ã°£ÀÌ ¼Ò¿äµË´Ï´Ù.
0°³
0°³
[°øÇаè¿]ÀÇ ½Å»óÇ°
¿ÀÅäijµå(Auto Cad) ±âÃʺÎÅÍ È°¿ë±îÁö
¸¸µé¸é¼ ¹è¿ì´Â ¾ÆµÎÀ̳ë IoT »ç¹°ÀÎÅͳݰú 40°³ÀÇ ÀÛÇ°µé
³»ÀÏÀº SQL 1(ÀÔ¹®)+2(½ÇÀü) ¼¼Æ®(MySQL Ver. 8.0)
Practical Foundation of Applied Systems Analysis
È¥ÀÚ °øºÎÇÏ´Â ³×Æ®¿öÅ©
ÀÌ ÃâÆÇ»çÀÇ ´Ù¸¥Ã¥
Tkinter¸¦ »ç¿ëÇÑ ÆÄÀ̽ã GUI ÇÁ·Î±×·¡¹Ö 2/e
RESTful Web API ÆÐÅÏ°ú ¸ð¹ü »ç·Ê
Çؼ® °¡´ÉÇÑ AI
Åë°èÀÇ ÇÔÁ¤
125°¡Áö ¹®ÀÚ¿ ¾Ë°í¸®µë