ÀÚ¹Ù ¿£ÅÍÇÁ¶óÀÌÁî °³¹ßÀ» ÆíÇÏ°Ô ÇØÁÖ´Â ¿ÀǼҽº °æ·® ¾ÖÇø®ÄÉÀÌ¼Ç ÇÁ·¹ÀÓ¿öÅ©ÀÎ ½ºÇÁ¸µÀº ÀÚ¹Ù¿Í °´Ã¼ ÁöÇâÀ̶ó´Â ±â¹Ý À§¿¡ ±»°ÇÈ÷ ¼¼¿öÁ® ÀÖ´Ù. µû¶ó¼ ½ºÇÁ¸µÀ» Á¦´ë·Î ÀÌÇØÇÏ°í È°¿ëÇÏ·Á¸é ¸ÕÀú ÀÚ¹Ù¿Í °´Ã¼ ÁöÇâºÎÅÍ ¿Ã¹Ù¸£°Ô ÀÌÇØÇØ¾ß ÇÑ´Ù.
¢Ã 01Àå: »ç¶÷À» »ç¶ûÇÑ ±â¼ú½Å±â¼úÀº ÀÌÀü ±â¼úÀÇ ¾î±ú¸¦ µó°í ±â°è¾î¿¡¼ °´Ã¼ ÁöÇâ ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î ±â°è¾î-0°ú 1ÀÇ ÇàÁø / ³Ê¹«³ª ºñÀΰ£ÀûÀÎ ¾ð¾î ¾î¼Àºí¸®¾î-0°ú 1ÀÇ ÇàÁøÀ» ¹þ¾î³ª Àΰ£ ÁöÇâÀ¸·Î / ±â°è¾î ´Ï¸ð´Ð C ¾ð¾î-°·ÂÇÑ À̽ļº / One Source Multi Object Use Anywhere C++ ¾ð¾î-Á¤¸» Àΰ£ÀûÀÎ ÇÁ·Î±×·¡¹Ö ¹æ¹ý·Ð, °´Ã¼ ÁöÇâ ÀÚ¹Ù - ÁøÁ¤ÇÑ °´Ã¼ ÁöÇâ ¾ð¾î ½Å±â¼úÀº ÀÌÀü ±â¼úÀÇ ¾î±ú¸¦ µó°í °³¹ßÀÚ¸¦ À§ÇØ ¹ßÀüÇÑ´Ù ½Å±â¼úÀÌ ¿ª»ç ¼Ó¿¡¼ ȯ¿µ¸¸ ¹ÞÀº °ÍÀº ¾Æ´Ï´Ù ªÀº ±Û, ±ä »ý°¢ UMLÀ» ´ëÇÏ´Â ÀÚ¼¼ ´ç½ÅÀº CBD, SOA°¡ ¾î·Á¿î°¡? °´Ã¼ ÁöÇâÀÇ 4´ë Ư¼ºÀ» ´©±º°¡¿¡°Ô ¼³¸íÇÒ ¼ö Àִ°¡? ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©´Â »ç»óÀÌ¸é¼ ¶Ç ´ÜÀÏ Á¦Ç°À̴٠å Ãâ°£ÀÇ º¯ ¢Ã 02Àå: ÀÚ¹Ù¿Í ÀýÂ÷Àû/ ±¸Á¶Àû ÇÁ·Î±×·¡¹ÖÀÚ¹Ù ÇÁ·Î±×·¥ÀÇ °³¹ß°ú ±¸µ¿ ÀÚ¹Ù¿¡ Á¸ÀçÇÏ´Â ÀýÂ÷Àû/±¸Á¶Àû ÇÁ·Î±×·¡¹ÖÀÇ À¯»ê ´Ù½Ã º¸´Â main() ¸Þ¼µå: ¸Þ¼µå ½ºÅà ÇÁ·¹ÀÓ º¯¼ö¿Í ¸Þ¸ð¸®: º¯¼ö! ³Ê ¾îµð ÀÖ´Ï? ºí·Ï ±¸¹®°ú ¸Þ¸ð¸®: ºí·Ï ½ºÅà ÇÁ·¹ÀÓ Áö¿ª º¯¼ö¿Í ¸Þ¸ð¸®: ½ºÅà ÇÁ·¹ÀÓ¿¡ °¤Çû¾î¿ä! ¸Þ¼µå È£Ãâ°ú ¸Þ¸ð¸®: ¸Þ¼µå ½ºÅà ÇÁ·¹ÀÓ 2 Àü¿ª º¯¼ö¿Í ¸Þ¸ð¸®: Àü¿ª º¯¼ö ¾²Áö ¸»¶ó´Ï±î¿ä! ¸ÖƼ ½º·¹µå / ¸ÖƼ ÇÁ·Î¼¼½ºÀÇ ÀÌÇØ STS(¶Ç´Â ÀÌŬ¸³½º)¸¦ ÀÌ¿ëÇØ T ¸Þ¸ð¸® ¿µ¿ª ¿³º¸±â Á¤¸® - °´Ã¼ ÁöÇâÀº ÀýÂ÷Àû/±¸Á¶Àû ÇÁ·Î±×·¡¹ÖÀÇ ¾î±ú¸¦ µó°í ¢Ã 03Àå: ÀÚ¹Ù¿Í °´Ã¼ ÁöÇⰴü ÁöÇâÀº Àΰ£ ÁöÇâÀÌ´Ù °´Ã¼ ÁöÇâÀÇ 4 ´ë Ư¼º - ĸ! »óÃߴ٠Ŭ·¡½º vs. °´Ã¼ = ºØ¾î»§Æ² vs. ºØ¾î»§ ??? Ãß»óÈ: ¸ðµ¨¸µ 82Ãß»óÈ´Â ¸ðµ¨¸µÀÌ´Ù Ãß»óÈ¿Í T ¸Þ¸ð¸® Ŭ·¡½º ¸â¹ö vs. °´Ã¼ ¸â¹ö = static ¸â¹ö vs. ÀνºÅϽº ¸â¹ö »ó¼Ó: Àç»ç¿ë + È®Àå »ó¼ÓÀÇ °·ÂÇÔ »ó¼ÓÀº is a °ü°è¸¦ ¸¸Á·ÇØ¾ß ÇÑ´Ù? ´ÙÁß »ó¼Ó°ú ÀÚ¹Ù »ó¼Ó°ú ÀÎÅÍÆäÀ̽º »ó¼Ó°ú UML Ç¥±â¹ý »ó¼Ó°ú T ¸Þ¸ð¸® ´ÙÇü¼º: »ç¿ëÆíÀǼº ¿À¹ö¶óÀ̵ù? ¿À¹ö·Îµù? ´ÙÇü¼º°ú T ¸Þ¸ð¸®´ÙÇü¼ºÀÌ Áö¿øµÇÁö ¾Ê´Â ¾ð¾î ĸ½¶È: Á¤º¸ Àº´Ð °´Ã¼ ¸â¹öÀÇ Á¢±Ù Á¦¾îÀÚ ÂüÁ¶ º¯¼öÀÇ º¹»ç Á¤¸® - ÀÚ¹Ù Å°¿öµå¿Í OOP 4 ´ë Ư¼º ¢Ã 04Àå: ÀÚ¹Ù°¡ È®ÀåÇÑ °´Ã¼ ÁöÇâabstract Å°¿öµå - Ãß»ó ¸Þ¼µå¿Í Ãß»ó Ŭ·¡½º »ý¼ºÀÚ Å¬·¡½º »ý¼º ½ÃÀÇ ½ÇÇà ºí·Ï, static ºí·Ïfinal Å°¿öµå final °ú Ŭ·¡½º final °ú º¯¼ö final °ú ¸Þ¼µå instanceof ¿¬»êÀÚ package Å°¿öµå interface Å°¿öµå¿Í implements Å°¿öµå this Å°¿öµå super Å°¿öµå ¿¹ºñ °í¼ö¸¦ À§ÇÑ ÇѸ¶µð Á¤¸® - ÀÚ¹Ù Å°¿öµå¿Í OOP È®Àå ¢Ã 05Àå: °´Ã¼ ÁöÇâ ¼³°è 5¿øÄ¢ - SOLIDSRP - ´ÜÀÏ Ã¥ÀÓ ¿øÄ¢ OCP - °³¹æ Æó¼â ¿øÄ¢ LSP - ¸®½ºÄÚÇÁ ġȯ ¿øÄ¢ ISP - ÀÎÅÍÆäÀ̽º ºÐ¸® ¿øÄ¢ DIP - ÀÇÁ¸ ¿ªÀü ¿øÄ¢ Á¤¸® - °´Ã¼ ÁöÇâ ¼¼°è¿Í SOLID ¢Ã 06Àå: ½ºÇÁ¸µÀÌ »ç¶ûÇÑ µðÀÚÀÎ ÆÐÅϾî´ðÅÍ ÆÐÅÏ(Adapter Pattern) ÇÁ·Ï½Ã ÆÐÅÏ(Proxy Pattern) µ¥ÄÚ·¹ÀÌÅÍ ÆÐÅÏ(Decorator Pattern) ½Ì±ÛÅÏ ÆÐÅÏ(Singleton Pattern) ÅÛÇø´ ¸Þ¼µå ÆÐÅÏ(Template Method Pattern) ÆÑÅ͸® ¸Þ¼µå ÆÐÅÏ(Factory Method Pattern) Àü·« ÆÐÅÏ(Strategy Pattern) ÅÛÇø´ Äݹé ÆÐÅÏ(Template Callback Pattern - °ßº»/ȸ½Å ÆÐÅÏ) ½ºÇÁ¸µÀÌ »ç¶ûÇÑ ´Ù¸¥ ÆÐÅÏµé ¢Ã 07Àå: ½ºÇÁ¸µ »ï°¢Çü°ú ¼³Á¤ Á¤º¸IoC/DI - Á¦¾îÀÇ ¿ªÀü/ÀÇÁ¸¼º ÁÖÀÔ ÇÁ·Î±×·¡¹Ö¿¡¼ ÀÇÁ¸¼ºÀ̶õ? ½ºÇÁ¸µ ¾øÀÌ ÀÇÁ¸¼º ÁÖÀÔÇϱâ 1 - »ý¼ºÀÚ¸¦ ÅëÇÑ ÀÇÁ¸¼º ÁÖÀÔ ½ºÇÁ¸µ ¾øÀÌ ÀÇÁ¸¼º ÁÖÀÔÇϱâ 2 - ¼Ó¼ºÀ» ÅëÇÑ ÀÇÁ¸¼º ÁÖÀÔ ½ºÇÁ¸µÀ» ÅëÇÑ ÀÇÁ¸¼º ÁÖÀÔ - XML ÆÄÀÏ »ç¿ë ½ºÇÁ¸µÀ» ÅëÇÑ ÀÇÁ¸¼º ÁÖÀÔ - ½ºÇÁ¸µ ¼³Á¤ ÆÄÀÏ(XML)¿¡¼ ¼Ó¼º ÁÖÀÔ ½ºÇÁ¸µÀ» ÅëÇÑ ÀÇÁ¸¼º ÁÖÀÔ - @Autowired¸¦ ÅëÇÑ ¼Ó¼º ÁÖÀÔ ½ºÇÁ¸µÀ» ÅëÇÑ ÀÇÁ¸¼º ÁÖÀÔ - @Resource¸¦ ÅëÇÑ ¼Ó¼º ÁÖÀÔ ½ºÇÁ¸µÀ» ÅëÇÑ ÀÇÁ¸¼º ÁÖÀÔ - @Autowired vs. @Resource vs. property ÅÂ±× AOP - Aspect? °üÁ¡? ÇÙ½É °ü½É»ç? Ⱦ´Ü °ü½É»ç? ÀÏ´Ü ´ýº º¸ÀÚ - ½ÇÀüÆí ÀÏ´Ü ´ýº º¸ÀÚ - ¼³¸íÆí ÀÏ´Ü ´ýº º¸ÀÚ - ¿ë¾îÆí ÀÏ´Ü ´ýº º¸ÀÚ - POJO¿Í XML ±â¹Ý AOP AOP ±âÃÊ ¿Ï¼º 310PSA - ÀÏ°ü¼º ÀÖ´Â ¼ºñ½º Ãß»óÈ ¢Ã ºÎ·ÏA: ½ºÇÁ¸µ MVC¸¦ ÀÌ¿ëÇÑ °Ô½ÃÆÇ ±¸ÃàA.1 URL°ú @RequestMapping ¿¬°áÇϱâ A.2 Àθ޸𸮠DB HSQL »ç¿ëÇϱâ A.3 VO¿Í MyBatis¸¦ ÀÌ¿ëÇÑ DAO ±¸Çö A.4 ¼ºñ½º(Service) ±¸ÇöA.5 ¸ñ·Ï ±¸Çö A.6 Àб⠱¸Çö A.7 »õ ±Û ±¸Çö A.8 ¼öÁ¤ ±¸Çö A.9 »èÁ¦ ±¸Çö A.10 ¸®ÆÑÅ͸µ ¢Ã ºÎ·ÏB: ÀÚ¹Ù 8 ¶÷´Ù¿Í ÀÎÅÍÆäÀ̽º ½ºÆå º¯ÈB.1 ¶÷´Ù°¡ µµÀÔµÈ ÀÌÀ¯ B.2 ¶÷´Ù¶õ ¹«¾ùÀΰ¡? B.3 ÇÔ¼öÇü ÀÎÅÍÆäÀ̽ºB.4 ¸Þ¼µå È£Ãâ ÀÎÀÚ·Î ¶÷´Ù »ç¿ë B.5 ¸Þ¼µå ¹Ýȯ°ªÀ¸·Î ¶÷´Ù »ç¿ë B.6 ÀÚ¹Ù 8 API¿¡¼ Á¦°øÇÏ´Â ÇÔ¼öÇü ÀÎÅÍÆäÀ̽º B.7 Ä÷º¼Ç ½ºÆ®¸²¿¡¼ ¶÷´Ù »ç¿ë B.8 ¸Þ¼µå ·¹ÆÛ·±½º¿Í »ý¼ºÀÚ ·¹ÆÛ·±½º B.9 ÀÎÅÍÆäÀ̽ºÀÇ µðÆúÆ® ¸Þ¼µå¿Í Á¤Àû ¸Þ¼µå B.10 Á¤¸®