|
|
|
|
|
|
|
Ã¥³»¿ë |
|
¡á Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë
- °´Ã¼ ÁöÇâ (°´Ã¼, Ã¥ÀÓ, ÀÇÁ¸, ĸ½¶È)
- ´ÙÇü¼º°ú Ãß»óÈ
- »ó¼Óº¸´Ü Á¶¸³
- SOLID ¼³°è ¿øÄ¢
- DI¿Í ¼ºñ½º ·ÎÄÉÀÌÅÍ
- ÁÖ¿ä µðÀÚÀÎ ÆÐÅÏ
¡á º£Å¸ ¸®´õµéÀÇ ¼Æò
Ã¥ Àü¹Ý¿¡¼ »óȲ¿¡ µû¸¥ ÀûÀýÇÑ ¿¹°¡ ¸¹ÀÌ »ç¿ëµÇ°í ÀÖ¾î ÇÊÀÚÀÇ ´Ù¾çÇÑ °æÇèÀÌ ´À²¸Áö´Â °Í°ú µ¿½Ã¿¡ ¾Ë¸ÂÀº ºñÀ¯·Î °´Ã¼ ÁöÇâ¿¡ ´ëÇÑ ÀÌÇصµ¸¦ È®½ÇÈ÷ ³ô¿©Áִ å!
- ÀåÁø´Þ´Ô -
°´Ã¼ ÁöÇâÀÇ ÁÖ¿ä °³³äÀ» ¸íÈ®È÷ ¼³¸íÇϸ鼵µ, ±×¿¡ ´ëÇÑ ÀÌÇظ¦ ±×¸²À¸·Î µ½°í ÀÖ¾î ÃÊ±Þ °³¹ßÀÚµµ ÀÌ Ã¥À» ÅëÇØ Ã³À½ºÎÅÍ ±âº»±â¸¦ Æ°Æ°ÇÏ°Ô ´ÙÁú ¼ö ÀÖ´Ù
-±è¿ëÈÆ´Ô, XLGames -
Á¦´ë·Î ÀÌÇØÇÏÁö ¸øÇß´ø °´Ã¼ ÁöÇâÀÇ °³³äµéÀ» ½¬¿î ¿¹Á¦¸¦ ÅëÇØ ÇÙ½ÉÀ» Àü´ÞÇÕ´Ï´Ù. ÇÁ·ÎÁ§Æ® ½ÃÀÛ Àü¿¡ Âü°íÇÑ´Ù¸é ¼±ÀÓ °³¹ßÀÚÀÇ °¡¸£Ä§À» ¾òÀ¸¸ç Áñ°Å¿î °³¹ßÀ» ÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.
- ¹ÚÀç±â´Ô, ÄíÆÎ -
ÀÌ Ã¥Àº ´ÜÈ£ÇÏ°í, ¸íÄèÇÕ´Ï´Ù. dzºÎÇÑ °æÇè¿¡¼ ³ª¿Â Ã¥ÀÌ´Ù º¸´Ï °æÇè¿¡ ÀÇÇØ ÇÊÅ͵È(Best Practice) ÇÙ½ÉÀÌ µµµå¶óÁ® ³ª¿É´Ï´Ù.
- ÀåÁؼ®´Ô) - |
|
¸ñÂ÷ |
|
Part 01 °´Ã¼ÁöÇâ
Chapter 01 µé¾î°¡±â
1. ÁöÀúºÐÇØÁö´Â ÄÚµå
2. ¼öÁ¤Çϱâ ÁÁÀº ±¸Á¶¸¦ °¡Áø ÄÚµå
3. ¼ÒÇÁÆ®¿þ¾îÀÇ °¡Ä¡
Chapter 02 °´Ã¼ ÁöÇâ
1. ÀýÂ÷ ÁöÇâ°ú °´Ã¼ ÁöÇâ
1.1 ÀýÂ÷ ÁöÇâ
1.2 °´Ã¼ ÁöÇâ
2. °´Ã¼(Object)
2.1 °´Ã¼ÀÇ ÇÙ½ÉÀº ±â´ÉÀ» Á¦°øÇÏ´Â °Í
2.2 ÀÎÅÍÆäÀ̽º¿Í Ŭ·¡½º
2.3 ¸Þ½ÃÁö
3. °´Ã¼ÀÇ Ã¥ÀÓ°ú Å©±â
4. ÀÇÁ¸
4.1 ÀÇÁ¸ÀÇ ¾ç¸é¼º
5. ĸ½¶È
5.1 ÀýÂ÷ ÁöÇâ ¹æ½Ä ÄÚµå
5.2 ĸ½¶È µÈ ±â´É ±¸Çö
5.3 ĸ½¶ÈÀÇ °á°ú´Â ³»ºÎ ±¸Çö º¯°æÀÇ À¯¿¬¼º ȹµæ
5.4 ĸ½¶È¸¦ À§ÇÑ µÎ °³ÀÇ ±ÔÄ¢
6. °´Ã¼ ÁöÇâ ¼³°è °úÁ¤
Chapter 03 ´ÙÇü¼º°ú Ãß»ó ŸÀÔ
1. »ó¼Ó °³¿ä
2. ´ÙÇü¼º°ú »ó¼Ó
2.1 ÀÎÅÍÆäÀ̽º »ó¼Ó°ú ±¸Çö »ó¼Ó
3. Ãß»ó ŸÀÔ°ú À¯¿¬ÇÔ
3.1 Ãß»ó ŸÀÔ°ú ½ÇÁ¦ ±¸ÇöÀÇ ¿¬°á
3.2 Ãß»ó ŸÀÔÀ» ÀÌ¿ëÇÑ ±¸Çö ±³Ã¼ÀÇ À¯¿¬ÇÔ
3.3 º¯ÈµÇ´Â ºÎºÐÀ» Ãß»óÈÇϱâ
3.4 ÀÎÅÍÆäÀ̽º¿¡ ´ë°í ÇÁ·Î±×·¡¹ÖÇϱâ
3.5 ÀÎÅÍÆäÀ̽º´Â ÀÎÅÍÆäÀ̽º »ç¿ëÀÚ ÀÔÀå¿¡¼ ¸¸µé±â
3.6 ÀÎÅÍÆäÀ̽º¿Í Å×½ºÆ®
Chapter 04 Àç»ç¿ë: »ó¼Óº¸´Ü Á¶¸³
1. »ó¼Ó°ú Àç»ç¿ë
1.1 »ó¼ÓÀ» ÅëÇÑ Àç»ç¿ëÀÇ ´ÜÁ¡ 1, »óÀ§ Ŭ·¡½º º¯°æÀÇ ¾î·Á¿ò
1.2 »ó¼ÓÀ» ÅëÇÑ Àç»ç¿ëÀÇ ´ÜÁ¡ 2, Ŭ·¡½ºÀÇ ºÒÇÊ¿äÇÑ Áõ°¡
1.3 »ó¼ÓÀ» ÅëÇÑ Àç»ç¿ëÀÇ ´ÜÁ¡ 3, »ó¼ÓÀÇ ¿À¿ë
2. Á¶¸³À» ÀÌ¿ëÇÑ Àç»ç¿ë
2.1 À§ÀÓ
2.2 »ó¼ÓÀº ¾ðÁ¦ »ç¿ëÇϳª?
Part 02 ¼³°è ¿øÄ¢ / DI¿Í ¼ºñ½º ·ÎÄÉÀÌÅÍ
Chapter 05 ¼³°è ¿øÄ¢: SOLID
1. ´ÜÀÏ Ã¥ÀÓ ¿øÄ¢(Single responsibility principle)
1.1 ´ÜÀÏ Ã¥ÀÓ ¿øÄ¢ À§¹ÝÀÌ ºÒ·¯¿À´Â ¹®Á¦Á¡
1.2 Ã¥ÀÓÀ̶õ º¯È¿¡ ´ëÇÑ °Í
2. °³¹æ Æó¼â ¿øÄ¢(Open-closed principle)
2.1 °³¹æ Æó¼â ¿øÄ¢ÀÌ ±úÁú ¶§ÀÇ ÁÖ¿ä Áõ»ó
2.2 °³¹æ Æó¼â ¿øÄ¢Àº À¯¿¬ÇÔ¿¡ ´ëÇÑ °Í
3. ¸®½ºÄÚÇÁ ġȯ ¿øÄ¢(Liskov substitution principle)
3.1 ¸®½ºÄÚÇÁ ġȯ ¿øÄ¢À» ÁöÅ°Áö ¾ÊÀ» ¶§ÀÇ ¹®Á¦
3.2 ¸®½ºÄÚÇÁ ġȯ ¿øÄ¢Àº °è¾à°ú È®Àå¿¡ ´ëÇÑ °Í
4. ÀÎÅÍÆäÀ̽º ºÐ¸® ¿øÄ¢(Interface segregation principle)
4.1 ÀÎÅÍÆäÀ̽º º¯°æ°ú ±× ¿µÇâ
4.2 ÀÎÅÍÆäÀ̽º ºÐ¸® ¿øÄ¢
4.3 ÀÎÅÍÆäÀ̽º ºÐ¸® ¿øÄ¢Àº Ŭ¶óÀ̾ðÆ®¿¡ ´ëÇÑ °Í
5. ÀÇÁ¸ ¿ªÀü ¿øÄ¢(Dependency inversion principle)
5.1 °í¼öÁØ ¸ðµâÀÌ Àú¼öÁØ ¸ðµâ¿¡ ÀÇÁ¸ÇÒ ¶§ÀÇ ¹®Á¦
5.2 ÀÇÁ¸ ¿ªÀü ¿øÄ¢À» ÅëÇÑ º¯°æÀÇ À¯¿¬ÇÔ È®º¸
5.3 ¼Ò½º ÄÚµå ÀÇÁ¸°ú ·±Å¸ÀÓ ÀÇÁ¸
5.4 ÀÇÁ¸ ¿ªÀü ¿øÄ¢°ú ÆÐÅ°Áö
6. SOLID Á¤¸®
Chapter 06 DI(Dependency Injection)¿Í ¼ºñ½º ·ÎÄÉÀÌÅÍ
1. ¾îÇø®ÄÉÀÌ¼Ç ¿µ¿ª°ú ¸ÞÀÎ ¿µ¿ª
2. DI(Dependency Injection)À» ÀÌ¿ëÇÑ ÀÇÁ¸ °´Ã¼ »ç¿ë
2.1 »ý¼ºÀÚ ¹æ½Ä°ú ¼³Á¤ ¸Þ¼µå ¹æ½Ä
2.2 DI¿Í Å×½ºÆ®
2.3 ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ© ¿¹
3. ¼ºñ½º ·ÎÄÉÀÌÅ͸¦ ÀÌ¿ëÇÑ ÀÇÁ¸ °´Ã¼ »ç¿ë
3.1 ¼ºñ½º ·ÎÄÉÀÌÅÍÀÇ ±¸Çö
3.2 ¼ºñ½º ·ÎÄÉÀÌÅÍÀÇ ´ÜÁ¡
Part 03 07 ÁÖ¿ä µðÀÚÀÎ ÆÐÅÏ
Chapter 07 ÁÖ¿ä µðÀÚÀÎ ÆÐÅÏ
1. µðÀÚÀÎ ÆÐÅÏÀ̶õ?
2. Àü·«(Strategy) ÆÐÅÏ
3. ÅÛÇø´ ¸Þ¼µå(Template Method) ÆÐÅÏ
3.1 »óÀ§ Ŭ·¡½º°¡ È帧 Á¦¾î ÁÖü
3.2 ÅÛÇø´ ¸Þ¼µå¿Í Àü·« ÆÐÅÏÀÇ Á¶ÇÕ
4. »óÅÂ(State) ÆÐÅÏ
4.1 »óÅ º¯°æÀº ´©°¡?
5. µ¥ÄÚ·¹ÀÌÅÍ(Decorator) ÆÐÅÏ
5.1 µ¥ÄÚ·¹ÀÌÅÍ ÆÐÅÏÀ» Àû¿ëÇÒ ¶§ °í·ÁÇÒ Á¡
6. ÇÁ·Ï½Ã(proxy) ÆÐÅÏ
6.1 ÇÁ·Ï½Ã ÆÐÅÏÀ» Àû¿ëÇÒ ¶§ °í·ÁÇÒ Á¡
7. ¾î´ðÅÍ(Adapter) ÆÐÅÏ
8. ¿ÉÀú¹ö(Observer) ÆÐÅÏ
8.1 ¿ÉÀú¹ö °´Ã¼¿¡°Ô »óÅ Àü´Þ ¹æ¹ý
8.2 ¿ÉÀú¹ö¿¡¼ ÁÖÁ¦ °´Ã¼ ±¸ºÐ
8.3 ¿ÉÀú¹ö ÆÐÅÏ ±¸ÇöÀÇ °í·Á »çÇ×
9. ¹Ìµð¿¡ÀÌÅÍ(Mediator) ÆÐÅÏ
9.1 Ãß»ó ¹Ìµð¿¡ÀÌÅÍ Å¬·¡½ºÀÇ Àç»ç¿ë
10. ÆÄ»çµå(Facade) ÆÐÅÏ
10.1 ÆÄ»çµå ÆÐÅÏÀÇ ÀåÁ¡°ú Ư¡
11. Ãß»ó ÆÑÅ丮(Abstract Factory) ÆÐÅÏ
12. ÄÄÆ÷ÁöÆ®(Composite) ÆÐÅÏ
12.1 ÄÄÆ÷ÁöÆ® ÆÐÅÏ ±¸ÇöÀÇ °í·Á »çÇ×
13. ³Î(Null) °´Ã¼ ÆÐÅÏ
Appendix A Ãßõ ÀÚ·á
Index |
|
|
|
|
|
|
|
Ãâ°í¾È³» |
|
|
Ãâ°í¶õ ÀÎÅÍÆÄÅ© ¹°·ùâ°í¿¡¼ µµ¼°¡ Æ÷ÀåµÇ¾î ³ª°¡´Â ½ÃÁ¡À» ¸»Çϸç, ½ÇÁ¦ °í°´´Ô²²¼ ¼ö·ÉÇϽô ½Ã°£Àº »óÇ°Áغñ¿Ï·áÇØ Ãâ°íÇÑ ³¯Â¥ + Åùè»ç ¹è¼ÛÀÏÀÔ´Ï´Ù. |
|
ÀÎÅÍÆÄÅ© µµ¼´Â ¸ðµç »óÇ°ÀÇ Àç°í°¡ ÃæÁ·ÇÒ ½Ã¿¡ ÀÏ°ý Ãâ°í¸¦ ÇÕ´Ï´Ù. |
|
ÀϺΠÀç°í¿¡ ´ëÇÑ Ãâ°í°¡ ÇÊ¿äÇÒ ½Ã¿¡´Â ´ã´çÀÚ¿¡°Ô Á÷Á¢ ¿¬¶ôÇϽðųª, °í°´¼¾ÅÍ(°í°´¼¾ÅÍ(1577-2555)·Î ¿¬¶ôÁֽñ⠹ٶø´Ï´Ù. |
|
¹è¼Ûºñ ¾È³» |
|
|
ÀÎÅÍÆÄÅ© µµ¼ ´ë·®±¸¸Å´Â ¹è¼Û·á°¡ ¹«·áÀÔ´Ï´Ù. |
|
´Ü, 1°³ÀÇ »óÇ°À» ´Ù¼öÀÇ ¹è¼ÛÁö·Î ÀÏ°ý ¹ß¼Û½Ã¿¡´Â 1°³ÀÇ ¹è¼ÛÁö´ç 2,000¿øÀÇ ¹è¼Ûºñ°¡ ºÎ°úµË´Ï´Ù. |
¾Ë¾ÆµÎ¼¼¿ä! |
|
|
°í°´´Ô²²¼ ÁÖ¹®ÇϽŠµµ¼¶óµµ µµ¸Å»ó ¹× ÃâÆÇ»ç »çÁ¤¿¡ µû¶ó Ç°Àý/ÀýÆÇ µîÀÇ »çÀ¯·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù. |
|
Åùè»ç ¹è¼ÛÀÏÀÎ ¼¿ï ¹× ¼öµµ±ÇÀº 1~2ÀÏ, Áö¹æÀº 2~3ÀÏ, µµ¼, »ê°£, ±ººÎ´ë´Â 3ÀÏ ÀÌ»óÀÇ ½Ã°£ÀÌ ¼Ò¿äµË´Ï´Ù.
(´Ü, Åä/ÀÏ¿äÀÏ Á¦¿Ü) |
|
|
|
|
ÀÎÅÍÆÄÅ©µµ¼´Â °í°´´ÔÀÇ ´Ü¼ø º¯½É¿¡ ÀÇÇÑ ±³È¯°ú ¹ÝÇ°¿¡ µå´Â ºñ¿ëÀº °í°´´ÔÀÌ ÁöºÒÄÉ µË´Ï´Ù.
´Ü, »óÇ°À̳ª ¼ºñ½º ÀÚüÀÇ ÇÏÀÚ·Î ÀÎÇÑ ±³È¯ ¹× ¹ÝÇ°Àº ¹«·á·Î ¹ÝÇ° µË´Ï´Ù.
±³È¯/¹ÝÇ°/º¸ÁõÁ¶°Ç ¹× Ç°Áúº¸Áõ ±âÁØÀº ¼ÒºñÀڱ⺻¹ý¿¡ µû¸¥ ¼ÒºñÀÚ ºÐÀï ÇØ°á ±âÁØ¿¡ µû¶ó ÇÇÇظ¦ º¸»ó ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.
Á¤È®ÇÑ È¯ºÒ ¹æ¹ý ¹× ȯºÒÀÌ Áö¿¬µÉ °æ¿ì 1:1¹®ÀÇ °Ô½ÃÆÇ ¶Ç´Â °í°´¼¾ÅÍ(1577-2555)·Î ¿¬¶ô Áֽñ⠹ٶø´Ï´Ù.
¼ÒºñÀÚ ÇÇÇغ¸»óÀÇ ºÐÀïó¸® µî¿¡ °üÇÑ »çÇ×Àº ¼ÒºñÀÚºÐÀïÇØ°á±âÁØ(°øÁ¤°Å·¡À§¿øȸ °í½Ã)¿¡ µû¶ó ºñÇØ º¸»ó ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.
|
±³È¯ ¹× ¹ÝÇ°ÀÌ °¡´ÉÇÑ °æ¿ì |
|
|
»óÇ°À» °ø±Þ ¹ÞÀ¸½Å ³¯·ÎºÎÅÍ 7ÀÏÀ̳» °¡´ÉÇÕ´Ï´Ù. |
|
°ø±Þ¹ÞÀ¸½Å »óÇ°ÀÇ ³»¿ëÀÌ Ç¥½Ã, ±¤°í ³»¿ë°ú ´Ù¸£°Å³ª ´Ù¸£°Ô ÀÌÇàµÈ °æ¿ì¿¡´Â °ø±Þ¹ÞÀº ³¯·ÎºÎÅÍ 3°³¿ùÀ̳», ±×»ç½ÇÀ» ¾Ë°Ô µÈ ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏÀ̳» °¡´ÉÇÕ´Ï´Ù. |
|
»óÇ°¿¡ ¾Æ¹«·± ÇÏÀÚ°¡ ¾ø´Â °æ¿ì ¼ÒºñÀÚÀÇ °í°´º¯½É¿¡ ÀÇÇÑ ±³È¯Àº »óÇ°ÀÇ Æ÷Àå»óÅ µîÀÌ ÀüÇô ¼Õ»óµÇÁö ¾ÊÀº °æ¿ì¿¡ ÇÑÇÏ¿© °¡´ÉÇÕ´Ï´Ù.
|
|
|
|
±³È¯ ¹× ¹ÝÇ°ÀÌ ºÒ°¡´ÉÇÑ °æ¿ì |
|
|
|
°í°´´ÔÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¸ê½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì´Â ºÒ°¡´ÉÇÕ´Ï´Ù. (´Ü, »óÇ°ÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÏ¿© Æ÷Àå µîÀ» ÈѼÕÇÑ °æ¿ì´Â Á¦¿Ü) |
|
½Ã°£ÀÌ Áö³²¿¡ µû¶ó ÀçÆǸŰ¡ °ï¶õÇÒ Á¤µµ·Î ¹°Ç°ÀÇ °¡Ä¡°¡ ¶³¾îÁø °æ¿ì´Â ºÒ°¡´ÉÇÕ´Ï´Ù. |
|
Æ÷Àå °³ºÀµÇ¾î »óÇ° °¡Ä¡°¡ ÈÑ¼ÕµÈ °æ¿ì´Â ºÒ°¡´ÉÇÕ´Ï´Ù. |
|
|
´Ù¹è¼ÛÁöÀÇ °æ¿ì ¹ÝÇ° ȯºÒ |
|
|
|
´Ù¹è¼ÛÁöÀÇ °æ¿ì ´Ù¸¥ Áö¿ªÀÇ ¹ÝÇ°À» µ¿½Ã¿¡ ÁøÇàÇÒ ¼ö ¾ø½À´Ï´Ù. |
|
1°³ Áö¿ªÀÇ ¹ÝÇ°ÀÌ ¿Ï·áµÈ ÈÄ ´Ù¸¥ Áö¿ª ¹ÝÇ°À» ÁøÇàÇÒ ¼ö ÀÖÀ¸¹Ç·Î, ÀÌÁ¡ ¾çÇØÇØ Áֽñ⠹ٶø´Ï´Ù. |
|
|
|
|
|
|