|
|
|
|
|
| µðÀÚÀÎ ÆÐÅÏ ÀÚ¹Ù ¿öÅ©ºÏ
- ÀýÆÇ |
 |
|
|
| ¤ýÀú ÀÚ |
Steven John Metsker
|
| ¤ý¿ª ÀÚ |
Á¤½ÂÁø
|
| ¤ý±¸ ºÐ |
¹ø¿ª¼
|
| ¤ý¹ßÇàÀÏ |
2003³â 04¿ù 15ÀÏ |
| ¤ýÁ¤ °¡ |
20,000¿ø |
| ¤ýÆäÀÌÁö |
484 ÆäÀÌÁö |
| ¤ýISBN |
89-8054-509-6 |
| ¤ý³À̵µ |
Áß±Þ |
| ¤ýÃâÆÇ»ç |
ÀÎÆ÷ºÏ |
|
|
|
|
|
|
|
 |
 |
ÀÚ¹Ù ÇÁ·Î±×·¡¸Ó ¿©·¯ºÐÀº ÀÌÁ¦ ÀÌ Ã¥À» ÅëÇØ¼ µðÀÚÀÎ ÆÐÅÏÀÇ °·ÂÇÑ ÈûÀ» ÀÌ¿ëÇϴµ¥ ÇÊ¿äÇÑ ÀÚ·áµéÀ» ¾ò°Ô µË´Ï´Ù. ÀÌ Ã¥¿¡¼ Á¦°øµÇ´Â °¢Á¾ ¿¹Á¦¿Í ¿¬½À ¹®Á¦µéÀº µðÀÚÀÎ ÆÐÅÏÀÇ ÀÌ·ÐÀûÀÎ ³»¿ëµéÀ» ¿©·¯ºÐµéÀÌ ½ÇÁ¦ »óȲ¿¡¼ ¹ß»ýÇÏ´Â ¹®Á¦Á¡µé¿¡ Á÷Á¢ Àû¿ëÇÏ¿© À̸¦ ÇØ°áÇÒ ¼ö ÀÖ´Â ÀÀ¿ë·ÂÀ» Ű¿öÁÝ´Ï´Ù. Steve Metsker´Â ¿©·¯ºÐµéÀÌ ¹®Á¦ ÇØ°á °æÇèÀ» ¸ö¼Ò üÇèÇÏ°Ô ÇÔÀ¸·Î½á µðÀÚÀÎ ÆÐÅÏÀ» ÀÚ¿¬½º·´°Ô Å͵æÇÒ ¼ö ÀÖµµ·Ï Çϰí ÀÖÀ¸¸ç, À̸¦ ÅëÇØ ¿©·¯ºÐÀÇ ½ÇÁúÀûÀÎ ±â¼úÀ» Çâ»ó½ÃÄÑ ÁÖ°í, ¹Ì¼Ç Å©¸®Æ¼ÄÃÇÑ ¾ÖÇø®ÄÉÀ̼ǿ¡¼µµ µðÀÚÀÎ ÆÐÅÏÀ» È¿°úÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â È®½ÅÀ» °¡Áö°Ô µÉ °ÍÀÔ´Ï´Ù.
µðÀÚÀÎ ÆÐÅÏ ÀÚ¹Ù ¿öÅ©ºÏÀº µðÀÚÀÎ ÆÐÅÏ ºÐ¾ßÀÇ °íÀü, Design Patterns(Addison-Wesley, 1995)¿¡¼ ¼Ò°³µÈ 23°³ÀÇ ±âº»ÀûÀÎ µðÀÚÀÎ ÆÐÅÏÀ» interface, responsibility, construction, operation, extensionÀÇ 5°¡Áö ºÎ·ù·Î ³ª´©¾î ¼³¸íÇÕ´Ï´Ù. °¢ ºÎ·ù¿¡ ¼ÓÇÏ´Â µðÀÚÀÎ ÆÐÅÏ¿¡ ´ëÇÑ ¼³¸íÀ» ½ÃÀÛÇÒ ¶§¸¶´Ù ¾ÕºÎºÐ¿¡ º°µµÀÇ µµÀԺθ¦ µÎ¾î, ÀÚ¹Ù¿¡¼ Á¦°øµÇ´Â ±â´ÉµéÀ» Àû¿ëÇÒ ¼ö ¿©·¯ºÐÀÇ ´É·ÂÀÌ ¾î´À Á¤µµÀÎÁö¸¦ ½º½º·Î °¡´ÆÇØ º¼ ¼ö ÀÖµµ·Ï ÇÏ¿´À¸¸ç, µÚÀÌ¾î °¢ ÆÐÅÏ¿¡ ´ëÇÑ »ó¼¼ÇÑ ¼³¸íÀÌ À̾îÁý´Ï´Ù. ÀÌ ¶§, UML ´ÙÀ̾î±×·¥°ú ÀÚ¹Ù Äڵ带 °°ÀÌ °çµé¿© ¼³¸íÇϸç, ¿©·¯ºÐÀÌ Ç®¾î¾ß ÇÒ ÇÁ·Î±×·¡¹Ö °úÁ¦µéÀ» Á¦½ÃÇÕ´Ï´Ù.
ÀÌ Ã¥À¸·Î ¿©·¯ºÐµéÀº ´ÙÀ½°ú °°Àº Áß¿äÇÑ ºÎ¹®¿¡¼ Àü¹®ÀûÀÎ Áö½ÄÀ» ȹµæÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù.
µµ¸ÞÀÎ µ¥ÀÌÅ͸¦ ½ºÀ®(Swing) ÄÄÆ÷³ÍÆ®·Î ÀüȯÇϱ⠽ºÀ®(Swing)À» À§ÇÑ FACADE »ý¼ºÇϱâ COMPOSITE¿¡¼ÀÇ Àç±Í È£Ãâ ó¸®Çϱâ JDBC¿¡¼ÀÇ BRIDGEÀÇ ¿ªÇÒ ÀÌÇØÇϱ⠸ðµ¨/ºä/ÄÁÆ®·Ñ·¯(Model/View/Controller)¿Í OBSERVER ¿¬°áÇϱâ MEDIATOR¸¦ ÀÌ¿ëÇÏ¿© °ü°è ¹«°á¼º(relational integrity) ȹµæÇϱâ PROXY¸¦ ÀÌ¿ëÇÏ¿© ÄÄÇ»ÅͰ£¿¡ Åë½ÅÇϱ⠼ºñ½º Á¦°øÀÚ(service provider)°¡ ÀνºÅϽºÈÇÒ Å¬·¡½º °áÁ¤ÇÏ°Ô Çϱâ MEMENTO¸¦ ÀÌ¿ëÇÏ¿© undo ¿¬»ê Áö¿øÇϱâ Ŭ·Ð(clone)À¸·Î ÇÁ·ÎÅäŸÀÌÇÎÇϱâ COMMAND¸¦ ÀÌ¿ëÇÏ¿© ¼ºñ½º Á¦°øÇϱ⠾²·¹µå ¾ÈÀü(thread-safe)ÇÑ ¹Ýº¹ÀÚ(iterator) °³¹ßÇϱâ DECORATOR¿Í VISITOR¸¦ ÀÌ¿ëÇÏ¿© Ŭ·¡½º È®ÀåÇϱâ
µðÀÚÀÎ ÆÐÅÏ µµÀü °úÁ¦µé¿¡ ´ëÇÑ ÇØ´äÀº Ã¥ÀÇ µÞºÎºÐ¿¡ ÀÖÀ¸´Ï, ¿©·¯ºÐÀÌ ÀÛ¾÷ÇÑ °á°ú¿Í Àü¹®°¡ÀÇ °ÍÀ» ºñ±³ÇØ º¼ ¼ö ÀÖ½À´Ï´Ù. UML¿¡ ´ëÇÑ °£·«ÇÑ ¼Ò°³¸¦ ÅëÇØ ¸ðµ¨¸µ Ç¥±â¹ýÀ» ¼³¸íÇϰí, ÀÌ Ã¥ÀÇ À¥ »çÀÌÆ®¸¦ ÅëÇØ ¸ðµç ¿¹Á¦ ÄÚµåµéÀ» ±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.
µðÀÚÀÎ ÆÐÅÏ ÀÚ¹Ù ¿öÅ©ºÏ¿¡¼ Á¦°øÇÏ´Â Áöħ°ú ¿¬½ÀÀ» ÅëÇØ ¿©·¯ºÐÀº ÀÚ¹Ù ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß¿¡¼ µðÀÚÀÎ ÆÐÅÏÀÌ Â÷ÁöÇϰí ÀÖ´Â Á߿伺À» ÃæºÐÈ÷ ÀÌÇØÇÏ°Ô µÉ °ÍÀ̸ç, µðÀÚÀÎ ÆÐÅÏÀ» ¿©·¯ºÐÀÇ Çö¾÷¿¡ Àû¿ëÇÒ ¼ö ÀÖ´Â ´É·ÂÀ» ¹è¾çÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù.
Steven John Metsker´Â °³¹ßÀÚµéÀÌ ±ò²ûÇϸ鼵µ °·ÂÇÑ ¼ÒÇÁÆ®¿þ¾î¸¦ °³¹ßÇÒ ¼ö ÀÖµµ·Ï µµ¿ÍÁÖ´Â °´Ã¼ ÁöÇâ ±â¼ú¿¡ °üÇÑ ³»¿ëÀ» Àú¼úÇÏ´Â ÀúÀÚÀÌÀÚ ¿¬±¸¿øÀÔ´Ï´Ù. ±×´Â °´Ã¼ ¸ðµ¨ÀÇ °ü°è ¹«°á¼º, ÀڹٷΠǪ´Â ³í¸® ÆÛÁñ, Plato¿Í OO ¾ð¾î¿¡¼ÀÇ °´Ã¼ °³³äÀÇ Â÷ÀÌÁ¡¿¡ °üÇÑ ±â»ç µîÀ» ±â°íÇÏ¿´À¸¸ç, ¼Ò±Ô¸ðÀÇ ÄÄÇ»ÅÍ ¾ð¾î¸¦ °£´ÜÇÏ°í ½±°Ô ¸¸µé ¼ö ÀÖ´Â ¹æ¹ý¿¡ °üÇÑ Ã¥ÀÎ Building Parsers with Java (Addison-Wesley, 2001)ÀÇ ÀúÀÚÀ̱⵵ ÇÕ´Ï´Ù.
Interface ÆÐÅÏ
- ADAPTER ´Ù¸¥ ÀÎÅÍÆäÀ̽º¸¦ Áö´Ñ Ŭ·¡½º°¡ Á¦°øÇÏ´Â ¼ºñ½º¸¦ ÀÌ¿ëÇÏ¿©, Ŭ¶óÀÌ¾ðÆ®°¡ ¿øÇÏ´Â ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇØ ÁØ´Ù.
- FACADE ¼ºê ½Ã½ºÅÛÀ» »ç¿ëÇϱ⠽±µµ·Ï ¸¸µé¾î ÁÖ´Â ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇÑ´Ù.
- COMPOSITE °³º°ÀûÀÎ °´Ã¼¿Í °´Ã¼µéÀÇ ÄÄÆ÷Áö¼ÇÀ», Ŭ¶óÀÌ¾ðÆ®°¡ ÀϰüµÇ°Ô ´Ù·ê ¼ö ÀÖµµ·Ï ÇØÁØ´Ù.
- BRIDGE Ãß»ó(abstraction, Ãß»ó ¿¬»êÀ» Áö´Ñ Ŭ·¡½º)¿Í Ãß»ó ¿¬»êÀÇ ±¸Çö(implementation)À» ¼·Î ºÐ¸®ÇÏ¿©, Ãß»ó°ú ±¸ÇöÀÌ ¼·Î µ¶¸³ÀûÀ¸·Î º¯°æµÉ ¼ö ÀÖµµ·Ï ÇÑ´Ù.
Responsibility ÆÐÅÏ
- SINGLETON Ŭ·¡½º°¡ ¿ÀÁ÷ ÇÑ °³ÀÇ ÀνºÅϽº¸¸À» °¡Áöµµ·Ï º¸ÀåÇϰí, ÀÌ ÀνºÅϽº¸¦ Á¢±ÙÇÒ ¼ö ÀÖ´Â Àü¿ªÀûÀÎ Á¢±Ù ÁöÁ¡À» Á¦°øÇÑ´Ù.
- OBSERVER °´Ã¼°£ÀÇ ÀÏ´ë´Ù Á¾¼Ó °ü°è¸¦ Á¤ÀÇÇÏ¿© ¾î´À ÇÑ °´Ã¼ÀÇ »óŰ¡ º¯°æµÇ¸é, ÀÌ °´Ã¼¿¡ Á¾¼ÓµÈ ¸ðµç °´Ã¼µéÀÌ À̸¦ Å뺸¹Þ¾Æ ÀÚµ¿À¸·Î µû¶ó¼ °»½ÅµÇµµ·Ï ÇÑ´Ù.
- MEDIATOR °´Ã¼µéÀÌ ¼·Î »óÈ£ ÀÛ¿ëÇÏ´Â ¹æ½ÄÀ» ĸ½¶ÈÇÑ °´Ã¼¸¦ Á¤ÀÇÇÑ´Ù. °´Ã¼µéÀÌ ¼·Î ¼·Î°£¿¡ »ó´ë °´Ã¼¸¦ ¸í½ÃÀûÀ¸·Î ÂüÁ¶ÇÏÁö ¾Êµµ·Ï ÇÏ¿©, °´Ã¼µé°£ÀÇ »óÈ£ ÀÛ¿ëÀ» µ¶¸³ÀûÀ¸·Î º¯°æÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù.
- PROXY ƯÁ¤ °´Ã¼¿¡ ´ëÇÑ Á¢±ÙÀ» °üÀåÇÏ´Â ´ë¸® °´Ã¼
- CHAIN OF RESPONSIBILITY ¿äûÀ» ó¸®ÇÒ ¼ö ÀÖ´Â °´Ã¼¸¦ ÇÑ °³ ÀÌ»ó µÎ¾î, ¿äûÀÇ ¼Û½ÅÀÚ¿Í ¼ö½ÅÀÚ°¡ ¼·Î È®Á¤µÇÁö ¾Êµµ·Ï ÇÑ´Ù.
- FLYWEIGHT °øÀ¯¸¦ ÀÌ¿ëÇÏ¿© ¸¹Àº ¾çÀÇ Àڱ׸¶ÇÑ °´Ã¼µéÀ» È¿À²ÀûÀ¸·Î Áö¿øÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù.
Construction ÆÐÅÏ
- BUILDER °´Ã¼ÀÇ »ý¼º ·ÎÁ÷À» ÀνºÅϽºÈÇÒ Å¬·¡½ºÀÇ ¿ÜºÎ·Î ¿Å±ä´Ù.
- FACTORY METHOD °´Ã¼¸¦ »ý¼ºÇÏ´Â ÀÎÅÍÆäÀ̽º¸¦ Á¤ÀÇÇÑ´Ù. ¾î¶² Ŭ·¡½ºÀÇ °´Ã¼¸¦ »ý¼ºÇÒ °ÍÀΰ¡¿¡ °üÇÑ °áÁ¤±ÇÀ» °¡Áö°í ÀÖ´Ù.
- ABSTRACT FACTORY ¼·Î °ü·ÃÀÖ´Â ¶Ç´Â ¼·Î µ¶¸³ÀûÀÎ °´Ã¼µéÀÇ ÁýÇÕÀ» »ý¼ºÇÑ´Ù.
- PROTOTYPE ¿¹Á¦¸¦ º¹»çÇÏ¿© »õ·Î¿î °´Ã¼µéÀ» Á¦°øÇÑ´Ù.
- MEMENTO °´Ã¼ »óÅÂÀÇ ÀúÀå°ú ¹ÝȯÀ» Á¦°øÇÑ´Ù.
Operation ÆÐÅÏ
- TEMPLATE METHOD ¾Ë°í¸®µëÀ» ¸Þ½îµå·Î ±¸ÇöÇÒ ¶§, ¾Ë°í¸®µëÀÇ ÀϺκÐÀº Á¤ÀÇÇÏÁö ¾Ê°í, ´ë½Å ÀÌ ºÎºÐÀº ¼ºê Ŭ·¡½º¿¡¼ Á¤ÀÇÇϵµ·Ï ÇÑ´Ù.
- STATE °´Ã¼ÀÇ »óÅÂ¿Í °ü·ÃµÈ ·ÎÁ÷Àº °´Ã¼ÀÇ »óŸ¦ ³ªÅ¸³»´Â Ŭ·¡½º·Î °¢°¢ ºÐ»ê½ÃÄÑ ³õ´Â´Ù.
- STRATEGY º°µµÀÇ Àü·«À̳ª ¹æ¹ýÀº °øÅë ¿¬»êÀ» ¼öÇàÇÏ´Â º°µµÀÇ Å¬·¡½º·Î ĸ½¶ÈÇÑ´Ù.
- COMMAND °³¹ßÀÚ°¡ ¿äûÀ» °´Ã¼·Î ĸ½¶ÈÇÏ¿© ¼·Î ´Ù¸¥ ¿äûÀ» Çϴ Ŭ¶óÀÌ¾ðÆ®¸¦ ÆÐ·¯¹ÌÅÍÈÇϰųª, ¿äûÀ» Å¥À×Çϰųª, ½Ã°£À» ÃøÁ¤Çϰųª, ·Î±×¸¦ ³²±æ ¼ö ÀÖ°í, undo()¿Í °°Àº ¿¬»êÀ» ¿ä±¸ÇÑ´Ù.
- INTERPRETER ÀÏ·ÃÀÇ ÄÄÆ÷Áö¼Ç ±ÔÄ¢¿¡ µû¶ó ½ÇÇà°¡´É °´Ã¼µéÀ» °³¹ßÀÚ°¡ ÄÄÆ÷ÁîÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù.
Extension ÆÐÅÏ
- DECORATOR °³¹ßÀÚ°¡ °´Ã¼ÀÇ ÇàÀ§(behavior)¸¦ µ¿ÀûÀ¸·Î ±¸¼ºÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù.
- ITERATOR ÄÝ·º¼Ç¿¡ ´ã±ä ¿ø¼ÒµéÀ» ¼øÂ÷ÀûÀ¸·Î Á¢±ÙÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» Á¦°øÇÑ´Ù.
- VISITOR °³¹ßÀÚ°¡ °èÃþ ±¸Á¶ Ŭ·¡½º¸¦ ¹Ù²ÙÁö ¾Ê°í, °èÃþ ±¸Á¶¸¦ À§ÇÑ ¿¬»êÀ» »õ·Î Á¤ÀÇÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù.
|
| |
 |
 |
ÄÄÇ»ÆÃ ºÐ¾ß¿¡¼ ¹ß»ýÇÏ´Â ¹®Á¦µéÀÇ ¿øÀÎÀº ¿©·¯ °¡Áö°¡ ÀÖ°ÚÁö¸¸, ±× Áß¿¡¼ ´ëÇ¥ÀûÀÎ µÎ °¡Áö¸¦ ²Å´Â´Ù¸é, ±×°ÍÀº Áߺ¹(redundancy)°ú º¹À⼺(complexity)ÀÌ´Ù. ÀÌ´Â °Å²Ù·Î ¸»ÇØ, ´ëºÎºÐÀÇ ¹®Á¦µéÀº Áߺ¹À» Á¦°ÅÇÏ°í º¹À⼺À» ´Ü¼øÈ½ÃÅ´À¸·Î½á, ÇØ°á ¶Ç´Â ÇØ°áÀÇ ½Ç¸¶¸®¸¦ ãÀ» ¼ö ÀÖ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù.
µðÀÚÀÎ ÆÐÅÏÀ̶õ, 'Àǵµ(intent)¸¦ ´Þ¼º(pursue)ÇÏ´Â ¹æ½Ä(way)'ÀÌ´Ù. °¢°¢ÀÇ µðÀÚÀÎ ÆÐÅϸ¶´Ù ±× ÆÐÅÏÀ» Àû¿ëÇÏ·Á´Â ÀÌÀ¯, Áï 'Àǵµ'°¡ ÀÖ°í, ÀÌ ´Ù¾çÇÑ ÀǵµµéÀº ±Ã±ØÀûÀ¸·Î Áߺ¹ÀÇ Á¦°Å¿Í º¹À⼺ÀÇ ÃÖ¼Òȸ¦ ÅëÇØ ´Ü¼øÇÔÀ» ȹµæÇÏ·Á´Â ÇÑ °¡Áö ¸ñÀûÀ¸·Î ±Í°áµÈ´Ù. ±×¸®°í, ÀÌ·¯ÇÑ ÀǵµµéÀ» '´Þ¼º'Çϱâ À§ÇØ 'Àç»ç¿ë(reuse)'°ú '¿ªÇÒ(responsibility)ÀÇ ºÐ´ã'À̶ó´Â '¹æ½Ä'ÀÌ ÁÖ·Î »ç¿ëµÈ´Ù.
º£Å×¶û ÇÁ·Î±×·¡¸ÓµéÀÇ Äڵ带 º¸°Ô µÇ¸é ÀÚ½ÅÀÇ ÄÚµå¿Í´Â ´Ù¸¥ ¹º°¡¸¦ ´À³¥ ¼ö ÀÖ´Ù. ÀÌ ¹º°¡ ´Ù¸£´Ù´Â ´À³¦Àº ¹Ù·Î ´Ü¼øÇÔ(simplicity)¿¡¼ ±âÀÎÇÏ´Â °ÍÀÌ´Ù. ±×¸®°í, ÀÌ ´Ü¼øÇÔÀº Àç»ç¿ëÀ» ÅëÇØ Áߺ¹À» Á¦°ÅÇÏ°í ¿ªÇÒÀÇ ºÐ´ãÀ» ÅëÇØ º¹À⼺À» ÃÖ¼ÒÈÇÔÀ¸·Î½á ´Þ¼ºÇÑ °ÍÀÌ´Ù. º£Å×¶û ÇÁ·Î±×·¡¸ÓµéÀº À̰͵éÀ» ÀÌ¹Ì ¾Ë°í ÀÖ´Â °ÍÀÌ´Ù. ±×·¸´Ù¸é º£Å×¶û ÇÁ·Î±×·¡¸ÓµéÀº ¾î¶»°Ô ÀÌ·¯ÇÑ ´É·ÂÀ» °¡Áö°Ô µÇ¾úÀ»±î? ÀÌ´Â ¾î¶² ü°èÀûÀÎ ÀÌ·ÐÀ̳ª ±Ù°Å¿¡ ¹ÙÅÁÀ» µÎ°í Àִٱ⠺¸´Ù´Â ´ÙºÐÈ÷ Á÷°üÀûÀÌ°í °æÇèÀûÀÎ °ÍµéÀÌ´Ù.
1995³âµµ¿¡ ³ª¿Â Design PatternsÀ̶õ Ã¥Àº °´Ã¼ÁöÇâ ¼³°è ºÐ¾ß¿¡¼ ÃàÀûµÈ °æÇèÀ» ÅëÇØ À¯¿ëÇÏ´Ù°í ¾Ë·ÁÁø ´ëÇ¥ÀûÀÎ µðÀÚÀÎ ÆÐÅÏ 23°¡Áö¸¦ ¹®¼ÈÇÑ ±â³äºñÀûÀΠåÀÌ´Ù. ´Ã ±×·¯ÇÏµí °íÀü¿¡´Â ¹Ýµå½Ã ÇØ¼³¼°¡ µû¸£°Ô ¸¶·ÃÀε¥, ÀÌ Ã¥ Design Pattern JavaTM Workbookµµ ±×·¯ÇÑ Ã¥ °¡¿îµ¥ ÇϳªÀÌ´Ù. Ã¥ Á¦¸ñ¿¡¼ ¾Ë ¼ö ÀÖµíÀÌ, ÀÌ Ã¥Àº 'ÀÚ¹Ù' ÇÁ·Î±×·¡¸Ó¸¦ ´ë»óÀ¸·Î µðÀÚÀÎ ÆÐÅÏÀ» ¼³¸íÇϰí ÀÖÀ¸¸ç, µ¶ÀÚÀÇ Àû±ØÀûÀÎ Âü¿©°¡ ÀÖ¾î¾ß¸¸ ±× ÇнÀ È¿°ú°¡ ±Ø´ëȵǵµ·Ï ¼³°èµÈ '¿öÅ©ºÏ'ÀÌ´Ù. µû¶ó¼, ÀÌ Ã¥¿¡ »©°îÈ÷ µé¾îÂù 'µµÀü °úÁ¦'µéÀº ´Ù¸¥ Ã¥¿¡¼Ã³·³ ½Ã°£³ª¸é Ç®¾îµµ µÇ´Â ¿É¼Ç »çÇ×ÀÌ ¾Æ´Ï¶ó º»¹®ÀÇ ¿¬ÀåÀ̸ç, ±×³É ³Ñ¾î°¡°Ô µÇ¸é ¼³¸íÀÌ À̾îÁöÁö ¾Ê´Â °æ¿ìµµ ÀÖÀ¸¹Ç·Î °¢º°È÷ À¯ÀÇÇØ¾ß ÇÑ´Ù. µðÀÚÀÎ ÆÐÅÏÀº °´Ã¼ÁöÇâ ¼³°è¿¡ °üÇÑ ±×µ¿¾ÈÀÇ °æÇèÀ» ³ª¿ÇÑ °ÍÀ̹ǷÎ, ±×³É Á¤µ¶À» ÅëÇØ¼´Â °¢ ÆÐÅÏÀÇ ÁøÁ¤ÇÑ °¡Ä¡¸¦ ±ú´Ý±â ¾î·Æ´Ù. ÀÚ½ÅÀÇ Äڵ忡 Á÷Á¢ Àû¿ëÇØ º¸°í ±× Áø°¡¸¦ üÇèÇßÀ» ¶§ ºñ·Î¼Ò µðÀÚÀÎ ÆÐÅÏÀÇ ÆÄ¿ö¸¦ ´À³¥ ¼ö ÀÖÀ¸¸ç, ¼¹®¿¡ ½Ç¸° º¥ÀڹΠÇÁ·©Å¬¸°ÀÇ ¸»µµ ±×·¯ÇÑ ¸Æ¶ô¿¡¼ ÀοëµÈ °ÍÀ̶ó »ý°¢µÈ´Ù. |
| |
| |
 |
 |
| "Infobook-Professional Computing" °ü·Ãµµ¼´Â ÃÑ 10±Ç ÀÔ´Ï´Ù. |
|
- ÀÌÆåÆ¼ºê STL(Effective STL)
|
|
- STL Æ©Å丮¾ó¡¤·¹ÆÛ·±½º °¡À̵å Á¦2ÆÇ
|
|
- ÀϹÝÀû ÇÁ·Î±×·¡¹Ö°ú STL: C++ Ç¥ÁØ ÅÛÇø´ ¶óÀ̺귯¸®ÀÇ È°¿ë°ú È®Àå
|
|
- Advanced UNIX Programming Á¦2ÆÇ
|
|
- Art of UNIX Programming
|
|
- POSIX(Æ÷Á÷½º) ¾²·¹µå¸¦ ÀÌ¿ëÇÑ ÇÁ·Î±×·¡¹Ö : À¯´Ð½º¡¤¸®´ª½º ȯ°æ¿¡¼ÀÇ ¾²·¹µå ÇÁ·Î±×·¡¹Ö
|
|
- More Effective C++
|
|
- µðÀÚÀÎ ÆÐÅÏ ÀÚ¹Ù ¿öÅ©ºÏ
|
|
- C++ Standard Library : Æ©Å丮¾ó¡¤·¹ÆÛ·±½º
|
|
- ÇÁ·Î±×·¡¹ÖÀÇ ¸ðµç °Í(The Practice of Programming)
|
| |
|
|
 |
|
|