ITºÎºÐ Àΰ­1À§
±â¾÷±³À°
HOME>ITÀü¹®°¡>ÇÁ·Î±×·¡¹Ö>°´Ã¼ÁöÇâ µðÀÚÀÎ ÆÐÅÏ
  • °´Ã¼ÁöÇâ µðÀÚÀÎ ÆÐÅÏ

  • °­ÀDZ¸¼º
  • (20°­) Àüü : 19½Ã°£ 52ºÐ|Æò±Õ : 59ºÐ36ÃÊ
  • Áõºù°¡´É
  • ¼ö·áÁõ, ¼ö°­Áõ, ÇнÀÁøµµ
  • ¼ö°­·á
  • 370,000¿ø
  • 185,000¿ø
  • ¾ËÁö¿À ÆÐŰÁö
  • "5°³¿ù" ÇýÅÃ!

¼ö°­ Àü ÀÚÁÖ ¹¯´Â Áú¹®

±³Àç ¾øÀÌ? Ãʺ¸ÀÚµµ °¡´É ÇѰ¡¿ä?

±³Àç ¾øÀ̵µ µ¿¿µ»ó°ú ½Ç½À ÀڷḸÀ¸·Î ÇнÀÇÒ ¼ö ÀÖÀ¸¸ç, Ãʺ¸ÀÚµµ ÀÌÇØÇÏ°í µû¶ó¿Ã ¼ö ÀÖµµ·Ï ¼³°èµÈ °­ÀÇÀÔ´Ï´Ù.

¾ËÁö¿ÀÀÇ °­ÀÇÆ¯Â¡Àº ¹«¾ùÀΰ¡¿ä?

¾ËÁö¿À °­ÀÇ´Â ´Ü¼ø ÃÔ¿µº»ÀÌ ¾Æ´Ï¶ó, Àü¹® ÆíÁýÀ¸·Î Çٽɸ¸ ´ã¾Æ ÇнÀ È¿À²À» ³ôÀÎ °­ÀÇÀÔ´Ï´Ù.

ÇÁ·Î±×·¥Àº ¾î¶»°Ô ±¸Çϳª¿ä?

¾ËÁö¿À ´Â ¿ø°ÝÆò»ý±³À°¿ø À¸·Î, ÇÁ·Î±×·¥¿¡ ´ëÇÑ Á¤º¸´Â ¾Ë¼ö ¾ø½À´Ï´Ù.

3¸í ÀÌ»óÀÇ »ç¶÷µé°ú ÇÔ²² ÇнÀÇÏ½Ç ¿¹Á¤Àΰ¡¿ä? ¾ËÁö¿À ´Üü¼ö°­

¾ËÁö¿À °­ÀÇ´Â ¸¹Àº ±â¾÷¿¡¼­µµ ½Å·ÚÇÏ´Â °­ÀÇ·Î ¼±ÅõǾú½À´Ï´Ù. ¼¼±Ý°è»ê¼­ ¹ßÇà±âÁØ

  • 01.56ºÐ µðÀÚÀÎ ÆÐÅϰú °´Ã¼ÁöÇâ part1
    µðÀÚÀÎ ÆÐÅÏÀÇ Çʿ伺, ½ºÅ©¸°UI Ãß°¡, ¸Þ´ºº° Ŭ·¡½º »ý¼º ¹æ¹ý, ¸ðµ¨ÀÇ ¿ªÇÒ, UML ¸ðµ¨¸µ ¾ð¾î, ±¸Á¶ ´ÙÀ̾î±×·¥, ÇàÀÇ ´ÙÀ̾î±×·¥, Ŭ·¡½º ´ÙÀ̾î±×·¥, Àç±ÍÀû ¿¬°ü °ü°è
    °´Ã¼ÁöÇâ°ú µðÀÚÀÎ ÆÐÅÏÀÇ Çʿ伺/¼ÒÇÁÆ®¿þ¾îÀÇ ¼³°è°¡ Á¦´ë·Î µÇÁö ¾Ê¾ÒÀ» ¶§ ¹ß»ýÇÏ´Â ¹®Á¦Á¡/applicationŬ·¡½º »ìÆìº¸±â/È­¸é±¸¼º È®ÀÎ/ÄÚµå ¸®½ºÆ® ÀÛ¼º/È­¸é ÀüȯÀ» À§ÇÑ ÄÚµå/clicked¸Þ¼Òµå¿¡¼­ À̺¥Æ® ó¸®/currentmenu¿¡ °¢°¢ ÇØ´çµÇ´Â ¸Þ´º¸í ÀúÀå/¹öư2 Ãß°¡/clicked¸Þ¼Òµå È®ÀÎ/°°Àº »óȲÀ» °´Ã¼ÁöÇâ ¹æ½ÄÀ¸·Î ó¸®/¸Þ´º°¡ ¼±ÅõǸé ÇØ´ç È­¸é Ãâ·Â/¹öư1À» Ŭ¸¯ÇÏ¸é ¼±ÅÃµÈ ¸Þ´ºÈ­¸é¿¡¼­ ÀûÀýÇÑ Ã³¸® ¼öÇà/screenUIŸÀÔ Á¤ÀÇ/show¸Þ¼Òµå/handlebutton1click¸Þ¼Òµå/¸Þ´ºº°·Î screenUI ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÑ Å¬·¡½º ÀÛ¼º/clicked¸Þ¼Òµå È®ÀÎ/show¸Þ¼Òµå È£Ãâ/button1À» Ŭ¸¯ÇßÀ» ¶§ ó¸®ÇÏ´Â ºÎºÐ/clicked¸Þ¼Òµå¿¡¼­ Á¤¸®ÇØ¾ß ÇÒ ÄÚµù ºÎºÐ/µÎ Á¾·ùÀÇ ¹öưó¸® ÄÚµå/clickde¸Þ¼Òµå¸¦ ¸Þ´ºÃ³¸® ºÎºÐ°ú ¹öưó¸® ºÎºÐÀ¸·Î ºÐ¸®/¹öư2 Ãß°¡/ÀÎÅÍÆäÀ̽º¿¡ handlebutton2clickÃß°¡/¹öư2 ó¸® ³»¿ë ÀÛ¼º/ÃÖÁ¾ÀûÀ¸·Î ¼öÁ¤µÈ ÄÚµå ³»¿ë/if/else±¸¹® »ç¿ë/¸Þ´º3À» Ãß°¡ ÇÒ °æ¿ì/screenUIŸÀÔÀ» Ãß°¡½ÃŰ°í ¸Þ´ºº°·Î Ŭ·¡½º ¸¸µå´Â ¹æ¹ý ±¸Çö ¿Ï·á/ÇÊ¿äÇÑ ³»¿ëÀ» ºÐ¸®ÇÔÀ¸·Î ¾òÀ» ¼ö ÀÖ´Â ÀåÁ¡/°´Ã¼ÁöÇâ ±â¹ý/°´Ã¼ÁöÇ⠸𵨸µ/¸ðµ¨ÀÇ ¿ªÇÒ/¸ðµ¨¸µ ¾ð¾î UML/´Ù¾çÇÑ ´ÙÀ̾î±×·¥ÀÇ Á¦°ø ÀÌÀ¯/±¸Á¶ ´ÙÀ̾î±×·¥/ÇàÀ§ ´ÙÀ̾î±×·¥/Ŭ·¡½º ´ÙÀ̾î±×·¥/ÁÖ¿ä ±¸¼º ¿ä¼Ò/Ŭ·¡½º ¼³¸í/°í¾çÀ̸¦ ¸¸µé¾î³»´Â ¼³°èµµ/Ŭ·¡½ºÀÇ ¼Ó¼º°ú ¿¬»êÀ» ±â¼ú/public/private/protected/package/ºÐ¼® ´Ü°è/¼³°è ´Ü°è/°ü°è ¼³¸í/¿¬°ü °ü°è(association)/µÎ Ŭ·¡½º »çÀÌÀÇ ¿¬°ü °ü°è/µÎ¹øÂ° ´ÙÀ̾î±×·¥ È®ÀÎ/µÎ Ŭ·¡½º »çÀÌÀÇ ¿¬°ü °ü°è¸¦ ³ªÅ¸³»´Â È­»ìÇ¥/¼ýÀÚ·Î °´Ã¼ ¹üÀ§¸¦ Ç¥Çö/´ÙÁß¼ºÀÇ Ç¥Çö/¿¬°ü °ü°èÀÇ ¹æÇ⼺/Ŭ·¡½º ´ÙÀ̾î±×·¥À» ¼Ò½ºÄÚµå·Î ±¸Çö/Ŭ·¡½º·Î Ç¥Çö/¸Þ¼Òµå´Â publicÀ¸·Î ¼±¾ð/¿¬°ü °ü°è°¡ Ç¥ÇöµÇ¾î Àִ Ŭ·¡½º ´ÙÀ̾î±×·¥µµ ¼Ò½ºÄÚµå·Î ±¸Çö/¼Ó¼ºÀÇ À̸§ÀÌ ¿ªÇÒÀÇ À̸§ Ȱ¿ë/´Ü¹æÇâ ¿¬°ü °ü°è/¼Ò½ºÄÚµå ±¸Çö/setter/getter¸Þ¼Òµå/´ÙÁß¼º ±¸Çö/¼Ò½ºÄÚµå ±¸Çö/vectorÀÌ¿ë/course°´Ã¼¿Í student°´Ã¼ÀÇ °ü°è/´ÙÁß¼º ¼öÁ¤/¼Ò½ºÄÚµå ±¸Çö/class student¿Í class course°¡ µ¶¸³ÀûÀ¸·Î ¼±¾ð/course classº¯È­/¿¬°ü Ŭ·¡½º(association class)/¿¬°ü °ü°è¿¡ Ãß°¡ÇÒ ¼Ó¼ºÀ̳ª ÇàÀ§°¡ ÀÖÀ» ¶§ »ç¿ë/¿¬°ü Ŭ·¡½º ±¸Çö ¹æ¹ý/¿¹Á¦ È®ÀÎ/transcriptŬ·¡½º/studentŬ·¡½º¿Í transcriptŬ·¡½ºÀÇ ¿¬°ü °ü°èÀÇ ´ÙÁß¼º/ÀÏ¹Ý Å¬·¡½º·Î º¯È¯ ÇÑ ¿¹/transcript¸¦ ¼Ò½º¿¡ Àû¿ë/transcript»ý¼º ÀÚ·á/Ŭ·¡½º ´ÙÀ̾î±×·¥ Ãß°¡/borrowing¿¬°ü °ü°è/Àç±ÍÀû ¿¬°ü °ü°è/°ü°èÀÇ ·çÇÁ
  • 02.54ºÐ °´Ã¼ÁöÇâ part2
    Ŭ·¡½º ´ÙÀ̾î±×·¥, ÀϹÝÈ­ °ü°è, ÁýÇÕ °ü°è(ÇÕ¼º °ü°è, Áý¾à °ü°è), ÀÇÁ¸ °ü°è, ½Çüȭ °ü°è, ÀýÂ÷ÁöÇâ°ú °´Ã¼ÁöÇâÀÇ Â÷ÀÌÁ¡, °´Ã¼ÀÇ Á¤ÀÇ, °´Ã¼ÀÇ Ã¥ÀÓ°ú Å©±â
    ÀϹÝÈ­ °ü°è(generalization)/ÀÚ½ÄŬ·¡½º(¼­ºêŬ·¡½º)/ºÎ¸ðŬ·¡½º(½´ÆÛŬ·¡½º)/is a kind of °ü°è/Ãß»ó ¸Þ¼Òµå/Ãß»ó Ŭ·¡½º/ÀϹÝÈ­ °ü°è¸¦ Ŭ·¡½º ´ÙÀ̾î±×·¥À¸·Î Ç¥Çö/ÁýÇÕ °ü°è(composition, aggregation)/ÇÕ¼º °ü°è(composition)/ºÎºÐ °´Ã¼°¡ Àüü °´Ã¼¿¡ ¼ÓÇÏ´Â °ü°è/Áý¾à °ü°è(aggregation)/ºÎºÐ °´Ã¼¿Í Àüü °´Ã¼°¡ µ¶¸³Àû/¼Ò½ºÄÚµå ºñ±³/¼Ó¼ºÀº ¸ðµÎ µ¿ÀÏ/ÇÕ¼º °ü°è ¸ðµ¨¸µ/Áý¾à °ü°è ¸ðµ¨¸µ/ÀÇÁ¸ °ü°è(dependency)/Ŭ·¡½ºÀÇ ¼Ó¼º¿¡¼­ ÂüÁ¶ÇÒ ¶§/¿¬»êÀÇ ÀÎÀÚ·Î »ç¿ëµÉ ¶§/person°ú carÀÇ ¿¬°ü °ü°è ¼Ò½ºÄÚµå ±¸Çö/gaspumpÃß°¡/½Çüȭ °ü°è(realization)/ÀÎÅÍÆäÀ̽º/turn_on/turn_off±â´É/Ŭ·¡½º ´ÙÀ̾î±×·¥ È®ÀÎ/½ºÅ×·¹¿À·Î interfaceÀÔ·Â/Ű¿öµå/ÀÎÅÍÆäÀ̽º¿Í Ŭ·¡½º »çÀÌÀÇ ½Çüȭ °ü°è/can do this °ü°è/°´Ã¼ÁöÇâ¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸í/ÀýÂ÷ÁöÇâ/ÇÁ·Î½ÃÀúµéÀÌ µ¥ÀÌÅ͸¦ Á¶ÀÛ/ÇÁ·Î½ÃÀú¸¦ ÀÌ¿ëÇÑ ÇÁ·Î±×·¡¹Ö ±â¹ý/¿©·¯°¡Áö ¹®Á¦ ¹ß»ý/°´Ã¼ÁöÇâ/°´Ã¼µé·Î ±¸¼º/ÇÁ·Î½ÃÀú´Â ÀÚ½ÅÀÌ ¼ÓÇÑ °´Ã¼ÀÇ µ¥ÀÌÅÍ¿¡¸¸ Á¢±Ù °¡´É/application.java´Â ÀýÂ÷ÁöÇâÀ¸·Î ±¸Çö/ÀýÂ÷ÁöÇâ-ÇÁ·Î±×·¥ ¼öÁ¤ÀÌ ¾î·Á¿î ±¸Á¶/°´Ã¼ÁöÇâ-ÇÁ·Î±×·¥ ¼öÁ¤ÀÌ ½¬¿î ±¸Á¶/°´Ã¼(object)¾Ë¾Æº¸±â/°´Ã¼°¡ Á¦°øÇØ¾ß ÇÒ ±â´É-¼Ò¸®Å©±â Á¦¾î °´Ã¼/signature(±â´É½Äº°À̸§, ÆÄ¶ó¹ÌÅÍ, °á°ú°ª)/ÀÎÅÍÆäÀ̽º/Ŭ·¡½º/¼Ò¸®Å©±â Á¦¾î °´Ã¼/ÆÄÀÏ Àб⠰´Ã¼/¾Ïȣȭ ó¸® °´Ã¼/¸Þ½ÃÁö/°´Ã¼ÀÇ Ã¥ÀÓ°ú Å©±â/°´Ã¼ÀÇ Ã¥ÀÓÀ» Á¤ÀÇ-ÀÎÅÍÆäÀ̽º/ÇÁ·Î±×·¥À» ¸¸µé±â À§ÇØ ÇÊ¿äÇÑ ±â´ÉÀÇ ¸ñ·Ï Á¤¸®/°´Ã¼ÀÇ ±¸¼º/±ÔÄ¢/ÀýÂ÷ÁöÇâ ¹æ½Ä°ú µ¿ÀÏÇÑ ±¸Á¶/°´Ã¼ÁöÇâÀÇ ÀåÁ¡/´ÜÀÏ Ã¥ÀÓ ¿øÄ¢(single responsibility principle)/ÀÇÁ¸/´Ù¸¥ °´Ã¼ ÀÌ¿ë/È帧Á¦¾î °´Ã¼ ¼Ò½ºÄÚµå ±¸Çö/´Ù¸¥ °´Ã¼¸¦ »ý¼º/´Ù¸¥ °´Ã¼ÀÇ ¸Þ¼Òµå È£Ãâ/ÆÄ¶ó¹ÌÅÍ Àü´Þ/½ºÆ®¸µ ŸÀÔÀ¸·Î ÆÄÀÏ °æ·Î¸¦ ¹Þµµ·Ï ¼öÁ¤µÉ °æ¿ì/½ºÆ®¸µ º¯¼ö Ãß°¡/º¯°æÀº ÀÇÁ¸ °ü°è¿¡ µû¶ó ÀüÀÌ/¼øÈ¯ ÀÇÁ¸ÀÇ Æ¯¼º/ÀÇÁ¸ÀÇ ¾ç¸é¼ºÀ» È®ÀÎÇÏ´Â ÄÚµå/authenticatorŬ·¡½º¿¡ ÀÇÁ¸/try/catch¹®¿¡ exceptionÀ» ÅëÇØ ±¸ºÐ/authenticate¸Þ¼ÒµåÀÇ º¯°æ/ÀÇÁ¸ÀÌ »óÈ£°£ÀÇ ¿µÇâÀ» ÁÖ´Â °Í ÀǹÌ/ĸ½¶È­(encapsulation)/¼Ò½ºÄÚµå È®ÀÎ/ÀýÂ÷ÁöÇâÀûÀÎ ÄÚµù/¸¸·á½Ã ó¸®/¸¸·á ¿©ºÎ¸¦ È®ÀÎÇÏ´Â ±ÔÄ¢ÀÇ º¯°æÀ» Äڵ忡 ¹Ý¿µ/¹ö±× ¹ß»ý °¡´É¼º/¹®Á¦ ¹ß»ýÀÇ ÀÌÀ¯/°´Ã¼ÁöÇâÀûÀ¸·Î ÄÚµå Àç ±¸Çö/ĸ½¶È­ ±â´É/¸¸·á ¿©ºÎ È®ÀÎ ±¸ÇöÀ» ĸ½¶È­/¸¸·á½Ã ó¸® ºÎºÐ È®ÀÎ/¸¸·á ¿©ºÎ ±ÔÄ¢ÀÇ º¯°æ/±â´ÉÀ» »ç¿ëÇÏ´Â °÷ÀÇ ¿µÇâÀ» ÃÖ¼ÒÈ­
  • 03.53ºÐ °´Ã¼ÁöÇâ part3
    ĸ½¶È­ ±â´É ±¸Çö, ĸ½¶È­¸¦ À§ÇÑ ±ÔÄ¢, °´Ã¼ÁöÇâ ¼³°è°úÁ¤, °´Ã¼ÁöÇàÀÇ ¿ø¸®
    ĸ½¶È­¸¦ À§ÇÑ 2°¡Áö ±ÔÄ¢/tell, don't ask/¸¸·á ÀÏÀÚ µ¥ÀÌÅ͸¦ °¡Áø member°´Ã¼¿¡°Ô ¸¸·á ¿©ºÎ È®ÀÎ/isexpired¸¦ memberŬ·¡½º¿¡¼­ ±¸Çö/µ¥¹ÌÅ׸£ÀÇ ¹ýÄ¢(law of demeter)/ÆÄ¶ó¹ÌÅÍ·Î ¹ÞÀº °´Ã¼ÀÇ ¸Þ¼Òµå¸¸ È£Ãâ/±â´É ±¸ÇöÀÇ Ä¸½¶È­¸¦ Çâ»ó/¿¹Á¦ ÄÚµå È®ÀÎ(½Å¹® ¹è´ÞºÎ ¿¹Á¦)/°í°´°ú Áö°©¿¡ ´ëÇÑ Å¬·¡½º È®ÀÎ/½Å¹® ¹è´ÞºÎ Ŭ·¡½º/½Å¹® ¹è´ÞºÎ°¡ °í°´ÀÇ Áö°©À» È®ÀÎÇÏÁö ¾ÊÀ» °æ¿ì/µ¥¹ÌÅ׸£ÀÇ ¹ýÄ¢À» ¾î±â°í ÀÖ´Â ÄÚµå/µ¥¹ÌÅ׸£ÀÇ ¹ýÄ¢À» ÁöŰÁö ¾Ê´Â Áõ»ó/°´Ã¼ÁöÇâ ¼³°è°úÁ¤/Á¦°øÇØ¾ß ÇÒ ±â´É ã°í ¾Ë¸ÂÀº °´Ã¼¿¡ ÇÒ´ç/°´Ã¼ °£¿¡ ¾î¶»°Ô ¸Þ½ÃÁö¸¦ ÁÖ°í ¹ÞÀ» Áö °áÁ¤/ÆÄÀÏ µ¥ÀÌÅÍ ¾Ïȣȭ ±â´É ¸ñ·Ï/°¢ °´Ã¼ÀÇ ¿¬°á ±×¸²/°´Ã¼ÀÇ Å©±â´Â ±¸ÇöÀ» ÁøÇàÇÏ´Â °úÁ¤¿¡¼­ ¸íÈ®/°´Ã¼¸¦ »õ·Î ¸¸µé¾î ºÐ¸®/¼³°è¸¦ ÇÒ ¶§ º¯°æµÇ´Â ºÎºÐ °í·Á/°´Ã¼ÁöÇâÀÇ ¿ø¸®/Ãß»óÈ­/ÇÊ¿ä·ÎÇÏ´Â ¼Ó¼ºÀ̳ª ÇൿÀ» ÃßÃâÇÏ´Â ÀÛ¾÷/Ãß»óÈ­ÀÇ Á¤ÀÇ/ĸ½¶È­/ÀÀÁýµµ/°áÇÕµµ/°´Ã¼ÁöÇâ ¼³°è ¿ø¸®/Á¤º¸Àº´Ð/ÀϹÝÈ­ °ü°è/ÀϹÝÈ­ÀÇ °³³ä/¿¹Á¦ ¼Ò½ºÄÚµå È®ÀÎ/Äڵ带 ¼öÁ¤ÇÒ Çʿ䰡 ¾øµµ·Ï ÀÛ¼º/¼­ºêŬ·¡½º ĸ½¶È­/ÀϹÝÈ­ °ü°è¿Í À§ÀÓ/¿¹Á¦ È®ÀÎ/¿¹Á¦ ¼Ò½ºÄÚµå È®ÀÎ/¸ÞÀÎ ¸Þ¼Òµå È®ÀÎ/stack¿¡¼­ »ç¿ëÇØ¼­´Â ¾ÈµÇ´Â ¸Þ¼Òµå/is a kind of °ü°èÀÇ ¼º¸³/À§ÀÓ/ÀϹÝÈ­¸¦ ´ë½ÅÇØ¼­ À§ÀÓÀ» »ç¿ëÇÏ´Â ¹æ¹ý/arlist°´Ã¼ »ý¼º-this·Î ÃʱâÈ­/arlist °´Ã¼¸¦ ÂüÁ¶ÇÒ ¼ö ÀÖµµ·Ï º¯°æ/Ŭ·¡½ºÀÇ ÀϹÝÈ­ °ü°è Á¦°Å/isempty/size¸Þ¼ÒµåÀÇ À§ÀӸ޼ҵ带 ¼­ºêŬ·¡½º¿¡ Ãß°¡/ÁýÇÕ·Ð °üÁ¡À¸·Î º» ÀϹÝÈ­ °ü°è/disjoint/complete Á¦¾àÁ¶°Ç »ç¿ë/¿¹Á¦ È®ÀÎ/ÀϹÝÈ­ÀÇ ¿ª°ü°è Ư¼öÈ­/local/non local/´ÙÁß ºÐ·ù/ºÐ·ù °¡´ÉÇÑ Á¶ÇÕ¿¡ °¢°¢ ´ëÀÀµÇ´Â Ŭ·¡½º »ý¼º/ÁýÇÕ·Ð °üÁ¡/´ÙÇü¼º/¿¹Á¦ ¼Ò½ºÄÚµå È®ÀÎ/´ÙÇü¼ºÀÇ °³³ä/´ÙÇü¼ºÀ» »ç¿ëÇÏÁö ¾Ê°í ÀÛ¼ºÇÑ ¿¹Á¦ ÄÚµå/¸ÞÀÎÄÚµå È®ÀÎ/´ÙÇü¼ºÀ» »ç¿ëÇÑ ÄÚµå/ÇÇÅÍÄÚµåÀÇ »ó¼Ó ±ÔÄ¢/Ŭ·¡½º ´ÙÀ̾î±×·¥ÀÇ ¿¹Á¦/¿¬°ü°ü°è-Áý¾à°ü°è »ç¿ë/´ÙÇü¼º°ú Ãß»óŸÀÔ, Àç»ç¿ë/´ÙÇü¼º°ú »ó¼Ó/ÀÚ¹Ù-Á¤ÀûŸÀÔ ¾ð¾î/ÀÚ¹Ù½ºÅ©¸³Æ®,·çºñ,±×·çºñ-µ¿ÀûŸÀÔ ¾ð¾î/¿¹Á¦ ¼Ò½ºÄÚµå È®ÀÎ/ŸÀÔÀÇ »ó¼Ó-ÀÎÅÍÆäÀ̽º »ó¼Ó,±¸Çö »ó¼Ó/»ó¼Ó¹ÞÀº ÀÎÅÍÆäÀ̽º¿¡ Á¤ÀÇµÈ ¸Þ¼Òµå ½ÇÁ¦ ±¸Çö/±¸Çö»ó¼Ó
  • 04.51ºÐ ´ÙÇü¼º°ú Ãß»óŸÀÔ, Àç»ç¿ë
    Ãß»ó ŸÀÔ°ú À¯¿¬ÇÔ, »ó¼Ó°ú Àç»ç¿ë, Á¶¸³À» ÀÌ¿ëÇÑ Àç»ç¿ë
    ½ÇÁ¦ ÄÚµå È®ÀÎ/Ãß»ó ŸÀÔ°ú ½ÇÁ¦ ±¸ÇöÀÇ ¿¬°á/Ŭ·¡½º ´ÙÀ̾î±×·¥ È®ÀÎ/collector/collector°´Ã¼Å¸ÀÔÀÇ collect¸Þ¼Òµå È£Ãâ/socketlogreader/Ãß»ó ŸÀÔÀ» ÀÌ¿ëÇÑ ±¸Çö ±³Ã¼ÀÇ À¯¿¬ÇÔ/°¢°¢ÀÇ ±â´É¿¡ µû¶ó ³ª´« Ŭ·¡½º/flowcontrollerÀÇ ÄÚµå º¸±â/file readºÎºÐ ¼öÁ¤/»ý¼ºÀÚ boolean/flowcontroller ¼³¸í/±âÁ¸ ¿ä±¸»çÇ×°ú Ãß°¡µÈ ¿ä±¸»çÇ×/±¸Çö Ãß»óÈ­/byteSource.java ÀÎÅÍÆäÀ̽º Ãß°¡/socketDateReaderÃß°¡Çؼ­ byteSource»ó¼Ó¹Þ±â/flowcontrollerÄÚµå´Â byteSource¸¦ »ç¿ëÇϵµ·Ï ¼öÁ¤ °¡´É/source.read¸Þ¼Òµå È£Ãâ/byteSourceŸÀÔÀÇ °´Ã¼¸¦ »ý¼ºÇÏ´Â ºÎºÐ/byteSourceŸÀÔ °´Ã¼ »ý¼º±â´É ºÐ¸®/»ý¼ºÀÚ¸¦ ÀÌ¿ë, byteSourceÀü´Þ¹Þ±â/¹®Á¦ ÇØ°á/create¸Þ¼Òµå º¸±â/singleton patternÀû¿ëÇÑ ºÎºÐ/flowcontroller ¼öÁ¤/http¸¦ ÀÌ¿ëÇØ ¾ÏȣȭÇÒ µ¥ÀÌÅ͸¦ Àоî¿À¶ó´Â ¿ä±¸ ¹ß»ý/º¯°æµÇ´Â Ŭ·¡½º´Â byteSourceFactory¿¡ Àû¿ë/Ãß»óÈ­ °úÁ¤À» ÅëÇØ ¾òÀº 2°¡Áö À¯¿¬ÇÔ/µ¥ÀÌÅÍ Àд ºÎºÐ°ú »ý¼ºÇÏ´Â ºÎºÐ Ãß»óÈ­/º¯È­µÇ´Â ºÎºÐÀ» Ãß»óÈ­Çϱâ/Ãß»óŸÀÔÀ¸·Î ±³Ã¼/Ãß»óÈ­°¡ µÇ¾îÀÖÁö ¾ÊÀº ÄÚµå/ÀÎÅÍÆäÀ̽º¿¡ ´ë°í ÇÁ·Î±×·¡¹ÖÇϱâ/ÀÎÅÍÆäÀ̽º´Â »õ·Ó°Ô ¹ß°ßµÈ Ã߻󰳳äÀ» ÅëÇØ µµÃâ/program to interface±ÔÄ¢/ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇØ¾ßÇÒ °æ¿ì/ÀÎÅÍÆäÀ̽º´Â ÀÎÅÍÆäÀ̽º »ç¿ëÀÚ ÀÔÀå¿¡¼­ ¸¸µé±â/¼ÒÄÏÀ» ÀÌ¿ëÇØ µ¥ÀÌÅ͸¦ Àоî¿À´Â ±â´ÉÀÌ ÇÊ¿äÇÒ °æ¿ì/ByteSource/ÀÎÅÍÆäÀ̽º¿Í Å×½ºÆ®/testProcessŬ·¡½º ÀÛ¼º/byteSourceÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇϵµ·Ï ÇÁ·Î±×·¡¹Ö µÇ¾îÀÖ´Â °æ¿ì/mock°´Ã¼¸¦ ÀÌ¿ëÇØ Å×½ºÆ®/mock°´Ã¼¸¦ ¸¸µå´Â ¹æ¹ý/»ó¼Ó°ú Àç»ç¿ë/À¥ ¿äûÀ» ó¸®Çϱâ À§ÇÑ Å¬·¡½º Á¦°ø/BaseCommandController/BaseCommandController°¡ AbstractController±â´É È®Àå/»ó¼ÓÀÇ ´ÜÁ¡/ÀÇÁ¸Çϴ Ŭ·¡½º Äڵ尡 º¯°æµÇ¸é ÀÚ½Ä Å¬·¡½º¿¡ ¿µÇâ/»ó¼ÓÀ» ÅëÇÑ Àç»ç¿ëÀÇ ´ÜÁ¡/Ŭ·¡½ºÀÇ ºÒÇÊ¿äÇÑ Áõ°¡/¾ÐÃàÀ» ¸ÕÀú ÇÏ°í ¾ÏȣȭÇÑ ÀúÀå¼Ò°¡ ÇÊ¿äÇÒ °æ¿ì/»ó¼ÓÀÇ ¿À¿ë/Á¶¸³À» ÀÌ¿ëÇÑ Àç»ç¿ë/4°³ÀÇ °´Ã¼¸¦ Á¶¸³ÇÑ ¿¹Á¦/EncryptorŬ·¡½º Àç»ç¿ë/Á¶¸³À» ÀÌ¿ëÇÏ¸é ºÒÇÊ¿äÇÑ Å¬·¡½º Áõ°¡ ¹æÁö/Á¶¸³¹æ½ÄÀÇ ¶Ç ´Ù¸¥ ÀåÁ¡/»ó¼Óº¸´Ù´Â °´Ã¼ Á¶¸³ »ç¿ë/Á¶¸³À» »ç¿ëÇÒ¶§ÀÇ ´ÜÁ¡/À§ÀÓ(delegation)/»ó¼ÓÀ» »ç¿ëÇÒ °æ¿ì/Ŭ·¡½º °èÃþÀÇ Æ¯Â¡/Á¶¸³À¸·Î ÀüȯÇÏ´Â ºÎºÐ °í·Á
  • 05.56ºÐ ¼³°è ¿øÄ¢°ú DI¿Í ¼­ºñ½º ·ÎÄÉÀÌÅÍ part1
    ´ÜÀÏ Ã¥ÀÓ ¿øÄ¢, °³¹æ Æó¼â ¿øÄ¢, ¸®½ºÄÚÇÁ ġȯ ¿øÄ¢, ÀÎÅÍÆäÀ̽º ºÐ¸® ¿øÄ¢, ÀÇÁ¸ ¿ªÀü ¿øÄ¢, ¾îÇø®ÄÉÆ¼¼Ç ¿µ¿ª, ¸ÞÀÎ ¿µ¿ª
    ¼³°è ¿øÄ¢(SOLID)/´ÜÀÏ Ã¥ÀÓ ¿øÄ¢(Single responsibility principle)/´ÜÀÏ Ã¥ÀÓ ¿øÄ¢À» À§¹ÝÇßÀ» °æ¿ìÀÇ ¹®Á¦/updateGui¸Þ¼Òµå/httpÇÁ·ÎÅäÄÝ¿¡¼­ ¼ÒÄÏÇÁ·ÎÅäÄÝ·Î º¯°æÀÌµÉ °æ¿ì/´ÜÀÏ Ã¥ÀÓ ¿øÄ¢À» À§¹ÝÇßÀ» °æ¿ìÀÇ ¶Ç ´Ù¸¥ ¹®Á¦/´ÜÀÏ Ã¥ÀÓ ¿øÄ¢À» ÁؼöÇÒ °æ¿ì/µ¥ÀÌÅÍ Àбâ, µ¥ÀÌÅÍ º¸¿©ÁÖ±â/´ÜÀÏ Ã¥ÀÓ ¿øÄ¢À» Áöų ¼ö ÀÖ´Â ¹æ¹ý/°³¹æ Æó¼â ¿øÄ¢(Open-closed principle)/±â´ÉÀ» È®ÀåÇϸ鼭µµ ±âÁ¸ÄÚµå´Â º¯°æµÇÁö ¾Ê´Â °ÍÀ» ÀǹÌ/º¯È­µÇ´Â ºÎºÐÀ» Ãß»óÈ­ÇØ¼­ Ç¥Çö/°³¹æ Æó¼â ¿øÄ¢À» ±¸ÇöÇÏ´Â ¶Ç ´Ù¸¥ ¹æ¹ý/ResponseSenderŬ·¡½º ¿¹Á¦/sendHeader, sendBody/ResponseSender¸¦ »ó¼Ó¹ÞÀº Ŭ·¡½º/ResponseSenderŬ·¡½º´Â È®Àå¿¡´Â ¿­·ÁÀÖÁö¸¸ º¯°æ¿¡´Â ´ÝÇôÀÖ´Â°Í ÀǹÌ/°³¹æ Æó¼â ¿øÄ¢ÀÌ ±úÁø °ÍÀÌ ¾Æ´ÑÁö È®ÀÎÇØ¾ßÇÒ Æ¯Â¡/´Ù¿îij½ºÆÃ/ŸÀÔÈ®ÀÎ/instanceof ŸÀÔÈ®ÀÎ ¿¬»êÀÚ/drawSpecific¸Þ¼Òµå/ºñ½ÁÇÑ if-elseºí·Ï/EnemyŬ·¡½º¿¡ »õ·Î¿î °æ·ÎÆÐÅÏÀ» Ãß°¡ÇÒ °æ¿ì/°æ·ÎÆÐÅÏ Ãß»óÈ­/¸®½ºÄÚÇÁ ġȯ ¿øÄ¢(Liskov substitution principle)/°¡Àå ´ëÇ¥ÀûÀÎ ¿¹Á¦(Á÷»ç°¢Çü, Á¤»ç°¢Çü) È®ÀÎ/squareŬ·¡½º°¡ rectangleŬ·¡½º¸¦ »ó¼Ó¹Þµµ·Ï ±¸Çö/increseHeight¸Þ¼Òµå »ìÆìº¸±â/instanceof¿¬»êÀÚ »ç¿ë/LSP´Â °è¾à°ú È®Àå¿¡ ´ëÇÑ °Í/¸®½ºÄÚÇÁ ġȯ ¿øÄ¢À» ¾î±æ °æ¿ì/instanceof¿¬»êÀÚ¸¦ »ç¿ëÇØ¼­ È®ÀÎ/»óÀ§Å¸ÀÔÀÇ Ãß»óÈ­°¡ µÇÁö¾Ê¾Æ »ý±ä ¹®Á¦/itemŬ·¡½º¿Í specialitemŬ·¡½º ¼Ò½ºÄÚµå È®ÀÎ/instanceof¿¬»êÀÚ¸¦ »ç¿ëÇÏ´ø Äڵ带 Ŭ·¡½º¸¸ »ç¿ëÇϵµ·Ï ±¸Çö/ÀÎÅÍÆäÀ̽º ºÐ¸® ¿øÄ¢(Interface segregation principle)/Ŭ¶óÀÌ¾ðÆ®´Â ÀÚ½ÅÀÌ »ç¿ëÇÏ´Â ¸Þ¼Òµå¿¡¸¸ ÀÇÁ¸/ÀÎÅÍÆäÀ̽º ºÐ¸® ¿øÄ¢À» ÁöŰÁö ¾Ê¾ÒÀ» °æ¿ì/ArticleServiceÀÇ ¸ñ·Ï Àб⠱â´ÉÀÇ º¯°æ ¹ß»ý/°Ô½Ã±Û ¸ñ·Ï ±â´É¿¡¸¸ º¯°æÀÌ µÆ¾îµµ ¸ðµç ¼Ò½º¸¦ ´Ù½Ã ÄÄÆÄÀÏ/¿ëµµ¿¡ ¸Â°Ô ÀÎÅÍÆäÀ̽º ºÐ¸®/ÀÎÅÍÆäÀ̽º¸¦ ºÐ¸®ÇÏ´Â ±âÁØ-Ŭ¶óÀ̾ðÆ®/ÀÇÁ¸ ¿ªÀü ¿øÄ¢(Dependency inversion principle)/°í¼öÁØ ¸ðµâ°ú Àú¼öÁØ ¸ðµâ/°í¼öÁØ ¸ðµâ°ú Àú¼öÁØ ¸ðµâÀÇ ¿¹Á¦/Àú¼öÁØ ¸ðµâÀÌ °í¼öÁØ ¸ðµâÀ» ÀÇÁ¸ÇÏ°Ô ¸¸µé¾î ÇØ°á/ÀÇÁ¸ ¿ªÀü ¿øÄ¢Àº ŸÀÔÀÇ ¼ÒÀ¯µµ ¿ªÀü/¹èÆ÷ ±âÁØÀÌ µÇ´Â ÆÐŰÁö/ÀÇÁ¸ ¿ªÀü ¿øÄ¢À» Àû¿ëÇÏÁö ¾ÊÀ» °æ¿ì/DI¿Í ¼­ºñ½º ·ÎÄÉÀÌÅÍ/¾îÇø®ÄÉÀÌ¼Ç ¿µ¿ª / ¸ÞÀÎ ¿µ¿ª/ºñµð¿À Æ÷¸Ë º¯È¯±â ¿¹Á¦/¿ä±¸»çÇ× ºÐ¼®/ºñµð¿À Æ÷¸Ë º¯È¯±â ¼³°è È®ÀÎ/°³¹æ Æó¼â ¿øÄ¢/workerŬ·¡½º ÄÚµå »ìÆìº¸±â/jobQueue¸¦ ±¸ÇöÇÑ °´Ã¼ ±¸Çϱâ/Locator°´Ã¼ »ç¿ë/LocatorŬ·¡½º´Â transcoderÆÐŰÁö¿¡ À§Ä¡/Locator°´Ã¼ÀÇ ÃʱâÈ­/¸ÞÀÎ ¿µ¿ª/¾îÇø®ÄÉÀÌ¼Ç ¿µ¿ªÀÇ °´Ã¼µéÀ» »ý¼º, ¼³Á¤, ½ÇÇà/¼­ºñ½º locator¹æ½Ä
  • 06.58ºÐ ¼³°è ¿øÄ¢°ú DI¿Í ¼­ºñ½º ·ÎÄÉÀÌÅÍ part2
    DI¸¦ ÀÌ¿ëÇÑ ¿ÜÁ¸°´Ã¼ »ç¿ë ¹æ¹ý, ¼­ºñ½º ·ÎÄÉÀÌÅ͸¦ ÀÌ¿ëÇÑ ÀÇÁ¸ °´Ã¼ »ç¿ë, µðÀÚÀÎ ÆÐÅÏÀÇ ÀÌÇØ, GoF µðÀÚÀÎ ÆÐÅÏ, UML°ú µðÀÚÀÎ ÆÐÅÏ, °¢ µðÀÚÀÎ ÆÐÅϵé
    DI¸¦ ÀÌ¿ëÇÑ ÀÇÁ¸ °´Ã¼ »ç¿ë¹æ¹ý/¼­ºñ½º ·ÎÄÉÀÌÅ͸¦ »ç¿ëÇÒ °æ¿ì/worker»ý¼ºÀÚ/mainŬ·¡½º º¯°æ/DI¸¦ ÅëÇØ ÀÇÁ¸ °´Ã¼¸¦ °ü¸®ÇÒ °æ¿ì/mainŬ·¡½º°¡ Á¶¸³±âÀÇ ¿ªÇÒ/AssemblerÀÛ¼º/getWorker, getJobCLI¸¦ Á¦°ø/DI¸¦ ÀÌ¿ëÇÑ ÀÇÁ¸ °´Ã¼ »ç¿ë/»ý¼ºÀÚ ¹æ½Ä/¼³Á¤ ¸Þ¼­µå ¹æ½Ä/Á¶¸³±â´Â »ý¼ºÀÚ¿Í ¼³Á¤ ¸Þ¼­µå¸¦ ÀÌ¿ëÇØ ÀÇÁ¸ °´Ã¼ Àü´Þ/DI¿Í Å×½ºÆ®/Ŭ·¡½º ±¸ÇöÀÌ ¿Ï·áµÇÁö ¾ÊÀº »óȲ/springframework»ìÆìº¸±â/worker´Â »ý¼ºÀÚ ¹æ½Ä, jobCli´Â ¼³Á¤ ¸Þ¼­µå ¹æ½Ä ÀÌ¿ë/propertyű×/classPathXmlApplicationContextŬ·¡½º/string Á¶¸³±âÀÇ ¿ªÇÒ/xml¼³Á¤ÆÄÀÏÀ» »ç¿ëÇÏ´Â ¹æ½Ä/xmlÀ» »ç¿ëÇÒ ¶§ÀÇ ¹®Á¦Á¡À» ÇØ°áÇÏ´Â ¹æ¹ý/xmlÆÄÀÏÀ» javaÄÚµå ±â¹ÝÀ¸·Î ±³Ã¼ÇÑ ¿¹Á¦/ÀÇÁ¸ °´Ã¼¸¦ º¯°æÇØ¾ß ÇÏ´Â °æ¿ì/¼­ºñ½º ·ÎÄÉÀÌÅ͸¦ ÀÌ¿ëÇÑ ÀÇÁ¸ °´Ã¼ »ç¿ë/½ÇÇà ȯ°æÀÇ Á¦¾à¶§¹®¿¡ DIÆÐÅÏÀ» Àû¿ëÇÒ ¼ö ¾ø´Â °æ¿ì/serviceLocator/¼­ºñ½º ·ÎÄÉÀÌÅͰ¡ ¿Ã¹Ù¸£°Ô µ¿ÀÛ ÇÏ·Á¸é/¼­ºñ½º ·ÎÄÉÀÌÅ͸¦ ±¸ÇöÇÏ´Â ¹æ½Ä/°´Ã¼ µî·Ï ¹æ½Ä/¼­ºñ½º ·ÎÄÉÀÌÅÍ Á¢±Ù À§ÇÑ static¸Þ¼­µå Á¦°ø/¸ÞÀÎ ¿µ¿ªÀÇ ÄÚµå È®ÀÎ/¾îÇø®ÄÉÀÌ¼Ç ¿µ¿ª ÄÚµå È®ÀÎ/¼­ºñ½º ·ÎÄÉÀÌÅͰ¡ Á¦°øÇÒ °´Ã¼ÀÇ Á¾·ù/¾îÇø®ÄÉÀÌ¼Ç ¿µ¿ª¿¡¼­ ÀÇÁ¸ °´Ã¼ º¯°æ °¡´É/»ó¼Ó/abstract¸¦ ÀÌ¿ëÇØ ±¸Çö/ÀÇÁ¸ °´Ã¼¸¦ ÇÊ¿ä·Î ÇÏ´Â ÄÚµå/myServiceLocatorÁ¤ÀÇ/main¿µ¿ª¿¡¼­ Ŭ·¡½ºÀÇ °´Ã¼ »ý¼º/Áö³×¸¯ / ÅÛÇø´/serviceLocatorÀÇ ´ÜÁ¡/jobQueueLocator¿Í transcoderLocator¸¦ µû·Î »ý¼º/Áö³×¸¯À̳ª ÅÛÇø´À» ÀÌ¿ëÇØ ¼­ºñ½º ·ÎÄÉÀÌÅ͸¦ ±¸ÇöÇÒ °æ¿ì/Áö³×¸¯ ¹æ½ÄÀÇ ¿¹Á¦/static¸Þ¼­µå¸¸À¸·Î ±¸¼º/jobQueue¿¡¸¸ ÀÇÁ¸/¼­ºñ½º ·ÎÄÉÀÌÅÍÀÇ °¡Àå Å« ´ÜÁ¡/¼­ºñ½º ·ÎÄÉÀÌÅÍ º¸´Ù´Â DI»ç¿ë/µðÀÚÀÎ ÆÐÅÏ/µðÀÚÀÎ ÆÐÅÏÀÇ ÀÌÇØ/µðÀÚÀÎ ÆÐÅÏÀÇ ±¸Á¶/GpF µðÀÚÀÎ ÆÐÅÏ/»ý¼ºÆÐÅÏ/±¸Á¶ÆÐÅÏ/ÇàÀ§ÆÐÅÏ/UML°ú µðÀÚÀÎ ÆÐÅÏ/Ä÷¹º¸·¹À̼Ç(Collaboration)/°´Ã¼¿Í ¿ªÇÒ »çÀÌÀÇ °ü°è/°´Ã¼µéÀÌ Æ¯Á¤ »óȲ¿¡¼­ ¼öÇàÇÏ´Â »óÈ£ÀÛ¿ë/±¸Ã¼ÀûÀÎ »óȲÀÇ Äݶ󺸷¹ÀÌ¼Ç Àû¿ë Ç¥Çö/¼øÂ÷ ´ÙÀ̾î±×·¥(Sequence diagram)/»ý¸í¼±/°´Ã¼ »çÀÌÀÇ ¸Þ½ÃÁö´Â È­»ìÇ¥·Î Ç¥½Ã/¿­·ÁÀÖ´Â È­»ìÇ¥´Â ºñµ¿±â ¸Þ½ÃÁö/ä¿öÁ® ÀÖ´Â È­»ìÇ¥´Â µ¿±â ¸Þ½ÃÁö/<>°´Ã¼»ý¼º ¸Þ½ÃÁö/<>°´Ã¼¼Ò¸ê ¸Þ½ÃÁö/¸Þ½ÃÁö¸¦ Ç¥ÇöÇÏ´Â Çü½Ä/½ÃÄö½º ¹øÈ£/°¡µå/ÀÀ´ä ¸Þ½ÃÁö/µµ¼­´ë¿© °ü·Ã ¼øÂ÷ ´ÙÀ̾î±×·¥ ¿¹Á¦/refŰ¿öµå »ç¿ë/°´Ã¼»çÀÌÀÇ »óÈ£ÀÛ¿ëÀ» È¿°úÀûÀ¸·Î ³ªÅ¸³»´Â ¿©·¯°¡Áö ¿¬»ê Á¦°ø/¼øÂ÷ ´ÙÀ̾î±×·¥°ú Ŭ·¡½º ´ÙÀ̾î±×·¥ÀÇ °ü°è/Â÷ÀÌÁ¡/Ŭ·¡½ºx¿Í Ŭ·¡½ºyÀÇ ¿¬°ü°ü°è ¼º¸³
  • 07.50ºÐ µðÀÚÀÎ ÆÐÅϵé part1
    »ý¼º ÆÐÅÏ, ±¸Á¶ ÆÐÅÏ, ÇàÀ§ ÆÐÅÏ, Abstract Factory, Builder
    °¢ µðÀÚÀÎ ÆÐÅÏµé ¾Ë¾Æº¸±â/Abstract Factory/¿¹Á¦-¿¤¸®º£ÀÌÅÍ ºÎǰ ¾÷ü º¯°æ/°¢ Á¦Á¶ ¾÷üº°·Î ºÎǰ °³¹ß/Ãß»óŬ·¡½º·Î Motor¿Í Door¸¦ Á¤ÀÇ/MotorŬ·¡½º´Â DoorŬ·¡½ºÀÇ getDoorStatus¸Þ¼Òµå È£Ãâ/MotorŬ·¡½ºÀÇ move¸Þ¼Òµå ±â´É/ÀϹÝÀûÀÎ È帧Àº µ¿ÀÏÇÏÁö¸¸ ƯÁ¤ ºÎºÐ¸¸ ´Ù¸¥ µ¿ÀÛÀ» ÇÏ´Â °æ¿ì/ÅÛÇø´ ¸Þ¼­µå ÆÐÅÏ È°¿ë/DoorŬ·¡½ºÀÇ open¸Þ¼Òµå ±â´É/lgDoor¿Í hdDoorÀÇ classÄÚµå ÀÛ¼º/Door´Â Ãß»óŬ·¡½º·Î Á¤ÀÇ/DoorÄÚµå º¸±â/close´Â ÅÛÇø´ ¸Þ¼­µå/ÇÏÀ§ Ŭ·¡½º¿¡¼­ ¿À¹ö¶óÀÌµå µÉ ºÎºÐÀº primitive ¶Ç´Â hook¸Þ¼­µå/open°ú doOpen/Ãß»óŬ·¡½º Door¸¦ »ó¼Ó¹Þ´Â lgDoor¿Í hdDoorÄÚµå º¸±â/doClose¿Í doOpen±¸Çö/Ŭ·¡½º ´ÙÀ̾î±×·¥ È®ÀÎ/openÀÇ ´ëÇ¥ÀûÀÎ ¿ªÇÒ/¹®À» Á¦¾îÇϴ Ŭ·¡½º°¡ ÇÊ¿ä/LGMotor¿Í HDMotor»ý¼º ºÎºÐ È®ÀÎ/MotorFactoryŬ·¡½ºÀÇ createMotor¸Þ¼­µå/MotorFactoryÄÚµå º¸±â/vendorID¿¡ µû¶ó LGMotor, HDMotor»ý¼º/DoorFactoryÄÚµå º¸±â/ClientŬ·¡½º/open¸í·ÉÀ» »ç¿ë/move¸Þ¼­µå ±â´É/Ãß»óÆÑÅ丮°¡ ÇÊ¿äÇÑ ÀÌÀ¯/´Ù¸¥ Á¦Á¶¾÷üÀÇ ºÎǰÀ» »ç¿ëÇØ¾ß ÇÏ´Â °æ¿ì/¼³Á¤ ºÎºÐ º¯°æ/ºÎǰº° Ŭ·¡½º º¸±â/ÃÑ 10°³ÀÇ Factory°´Ã¼¸¦ »ç¿ëÇØ¼­ ¿¤¸®º£ÀÌÅ͸¦ ±¸¼ºÇÏ´Â ÄÚµå/»õ·Î¿î Á¦Á¶¾÷üÀÇ ºÎǰÀ» »ç¿ëÇÒ °æ¿ì/DoorFactoryŬ·¡½º º¸±â/enum¿¡ SS¾÷ü Ãß°¡/client¿¡¼­ HD¸¦ SS·Î º¯°æ/LGElevatorFactory/HDElevatorFactory/createMotor¸Þ¼­µå¿Í createDoor¸Þ¼­µå Á¦°ø/ElevatorFactoryŬ·¡½º ´ÙÀ̾î±×·¥/Ãß»óŬ·¡½º·Î Á¤ÀǵǴ ElevatorFactoryŬ·¡½º º¸±â/Ãß»ó¸Þ¼­µå createMotor¿Í createDoor¼±¾ð/clientÄÚµå º¸±â/»õ·Î¿î Á¦Á¶¾÷üÀÇ ºÎǰÀ» Áö¿øÇÏ´Â °æ¿ì/SSElevatorFactory»ý¼º/SSElevatorFactoryŬ·¡½º, SSDoorŬ·¡½º, SSMotorŬ·¡½º º¸±â/client¼öÁ¤/ÇØ´ç Á¦Á¶¾÷üÀÇ ºÎǰÀ» »ý¼ºÇÏ´Â factoryŬ·¡½º Ãß°¡/Ŭ·¡½º ´ÙÀ̾î±×·¥ È®ÀÎ/Abstract Factory/Ãß»óÆÑÅ丮 ÆÐÅÏÀÇ Ä÷¹º¸·¹ÀÌ¼Ç ´ÙÀ̾î±×·¥/Ãß»óÆÑÅ丮 ÆÐÅÏ¿¡¼­ ³ªÅ¸³ª´Â ¿ªÇÒ/AbstractFactory/ConcreteFactory1/AbstractProductA/Ãß»óÆÑÅ丮 ¼øÂ÷ ´ÙÀ̾î±×·¥/clientºÎÅÍ ¼øÂ÷ÀûÀ¸·Î º¸±â/LGElevatorFactory¿Í HDElevatorFactoryŬ·¡½º¿¡ Ãß»óÆÑÅ丮 ÆÐÅÏÀ» Àû¿ëÇÑ Å¬·¡½º ´ÙÀ̾î±×·¥/ElevatorFactoryŬ·¡½º´Â AbstractFactory¿ªÇÒ/¿¹Á¦-½´ÆÃ°ÔÀÓ ¸¸µé±â/Ŭ·¡½º ´ÙÀ̾î±×·¥ º¸±â/StageŬ·¡½º ÄÚµå È®ÀÎ/ÄÚµåÀÇ ¹®Á¦Á¡/Ãß»óÆÑÅ丮 Àû¿ë °á°ú È®ÀÎ/EnemyFactoryÃß°¡/EnemyFactory±¸Çö/°´Ã¼ »ý¼ºÀ» À§ÇÑ ÆÑÅ丮 ¸Þ¼­µå/EasyStageEnemyFactory¿Í HardEnemyFactoryÁ¤ÀÇ/Factory¸¦ »ç¿ëÇϵµ·Ï º¯°æµÈ StageŬ·¡½º/enemyFactory¸¦ »ç¿ëÇØ °´Ã¼ »ý¼º/Builder/BuilderÆÐÅÏ ¼³¸í/¿¹Á¦ È®ÀÎ/À¯¿¬ÇÑ ÀڷᱸÁ¶ ÇÊ¿ä/BuilderÆÐÅÏÀÇ Å¬·¡½º ´ÙÀ̾î±×·¥/client³»¿ë È®ÀÎ
  • 08.57ºÐ µðÀÚÀÎ ÆÐÅϵé part2
    Iterator, Adapter, Template Method
    Ãß»óÆÑÅ丮 ÆÐÅÏ¿¡ Factory MethodÆÐÅϰú Template MethodÆÐÅÏ/ÆÐÅϵéÀÇ ¼ø¼­/IteratorÆÐÅÏ/¹è¿­ arrÀÇ ¸ðµç ¿ä¼Ò¸¦ Ç¥½ÃÇϱâ À§ÇØ for¹® »ç¿ë/iº¯¼ö È®ÀÎ/i¸¦ Çϳª¾¿ Áõ°¡/IteratorÆÐÅÏ ¼³¸í/¿¹Á¦ È®ÀÎ/Ŭ·¡½º ´ÙÀ̾î±×·¥ È®ÀÎ/ÀÎÅÍÆäÀ̽º Aggregate/AggregateÀÇ ¼Ò½º º¸±â/ÀÎÅÍÆäÀ̽º Iterator/Iterator¿¡ ÇÊ¿äÇÑ ¸Þ¼­µå/hasNext¸Þ¼­µå/next¸Þ¼­µå/BookŬ·¡½º º¸±â/BookShelfŬ·¡½º/BookShelfŬ·¡½º ¼Ò½º º¸±â/booksÇʵ带 privateÀ¸·Î ÇÑ ÀÌÀ¯/BookShelfIteratorŬ·¡½º ¼Ò½º º¸±â/hasNext¸Þ¼­µå/next¸Þ¼­µå/MainŬ·¡½º ¸¸µé±â/whileÀÇ Á¶°Ç/IteratorÆÐÅÏÀÇ 4°¡Áö ¿ªÇÒ/Iterator/ConcreteIterator/Aggregate/ConcreteAggregate/IteratorÆÐÅÏÀ» »ç¿ëÇÏ´Â ÀÌÀ¯/µ¿ÀÏ ÀÚ·áÇüÀÇ ¿©·¯ °´Ã¼ ¼øÂ÷ Á¢±Ù/AdapterÆÐÅÏ/wrapperÆÐÅÏ/Ŭ·¡½º¿¡ ÀÇÇÑ AdapterÆÐÅÏ(»ó¼Ó)/¿¹Á¦ È®ÀÎ/BannerŬ·¡½º/ÀÎÅÍÆäÀ̽º Print/PrintBanner°¡ AdapterÀÇ ¿ªÇÒÀ» ´ã´ç/BannerŬ·¡½º º¸±â/PrintÀÎÅÍÆäÀ̽º º¸±â/PrintBannerŬ·¡½º º¸±â/printWeak¸Þ¼­µå¿Í printStrong¸Þ¼­µå/Mainº¸±â/ÀνºÅϽº¿¡ ÀÇÇÑ AdapterÆÐÅÏ(À§ÀÓ)/Ŭ·¡½º ´ÙÀ̾î±×·¥ È®ÀÎ/Print¿Í Print2ÀÇ ¼Ò½º Â÷ÀÌ/printWeak¸Þ¼­µå¿Í printStrong¸Þ¼­µå/¿ªÇÒ »ìÆìº¸±â/TargetÀÇ ¿ªÇÒ/ClientÀÇ ¿ªÇÒ/AdapteeÀÇ ¿ªÇÒ/AdapterÀÇ ¿ªÇÒ/À§ÀÓÀ» »ç¿ëÇÑ °æ¿ì/¸¸µé¾îÁø Ŭ·¡½º¸¦ »õ·Î¿î ÀÎÅÍÆäÀ̽º¿¡ ¸Â°Ô °³Á¶ ½Ãų °æ¿ì/¹öÀü ¾÷/Template Method/¿¹Á¦ È®ÀÎ/HDMotorŬ·¡½º/enumerationÀÎÅÍÆäÀ̽º ÇÊ¿ä/HDMotorŬ·¡½ºÀÇ move¸Þ¼Òµå¸¦ ¼øÂ÷ ´ÙÀ̾î±×·¥À¸·Î Ç¥Çö/¼Ò½º ÄÚµå ±¸Çö/DoorŬ·¡½º º¸±â/HDMotorŬ·¡½º º¸±â/move¸Þ¼­µå º¸±â/ClientŬ·¡½º º¸±â/LGMotor¸¦ Ãß°¡ÇÒ °æ¿ì/LGMotor¸¦ ±¸ÇöÇÑ ¿¹Á¦/ÄÚµå Áߺ¹ÀÇ ¹®Á¦/MotorŬ·¡½º ±¸Çö/HDMotor¿Í LGMotorÀÇ ¼Ò½º ÄÚµå º¸±â/»ó¼ÓÀ» Ȱ¿ëÇØ ÄÚµå Áߺ¹ ÇÇÇϱâ/Ŭ·¡½º ´ÙÀ̾î±×·¥ È®ÀÎ/move¸Þ¼­µå¸¦ MotorŬ·¡½º·Î À̵¿½ÃŲ ¸ð½À/HDMotorÈ®ÀÎ/¼Ò½º ÄÚµå È®ÀÎ/MotorŬ·¡½ºÀÇ move¸Þ¼­µå º¸±â/ÄÚµå Áߺ¹ ÃÖ¼ÒÈ­¿¡ À¯¿ë/move¸Þ¼Òµå-ÅÛÇø´ ¸Þ¼Òµå/moveMotor¸Þ¼Òµå-Primitive¸Þ¼Òµå ¶Ç´Â hook¸Þ¼Òµå/Äݶ󺸷¹ÀÌ¼Ç ´ÙÀ̾î±×·¥ È®ÀÎ/Client´Â templateMethod¸Þ¼Òµå È£Ãâ/ÅÛÇø´ ¸Þ¼Òµå ÆÐÅÏÀ» Motor¿¹Á¦¿¡ Àû¿ëÇÑ °æ¿ì/ÅÛÇø´ ¸Þ¼Òµå ÆÐÅÏÀÇ Æ¯Â¡/¸®½ºÄÚÇÁ ġȯ ¿øÄ¢/»óÀ§ Ŭ·¡½º ÀÔÀå/Ãß»ó Ŭ·¡½º °³³ä/»óÀ§ Ŭ·¡½º¿Í ÇÏÀ§ Ŭ·¡½ºÀÇ ÇùÁ¶
  • 09.57ºÐ µðÀÚÀÎ ÆÐÅϵé part3
    Factory Method, Singleton
    Factory MethodÆÐÅÏ/ÀνºÅϽº¸¦ »ý¼ºÇÏ´Â °øÀåÀ» Template Method·Î ±¸Çö/idcard¸¦ ¸¸µå´Â ¿¹Á¦/framework»ìÆìº¸±â/ProductŬ·¡½º È®ÀÎ/Ŭ·¡½º ´ÙÀ̾î±×·¥À¸·Î ¼Ò½º ±¸Çö/ProductŬ·¡½º/FactoryŬ·¡½º/Á¦Ç°À» ¸¸µé°í µî·ÏÇÏ´Â ±¸ÇöÀÛ¾÷Àº ÇÏÀ§Å¬·¡½º¿¡¼­ ¼öÇà/create¸Þ¼Òµå/Ãß»ó¸Þ¼Òµå·Î Á¤ÀÇ/IDCardÆÐŰÁö »ìÆìº¸±â/IDCardFactoryŬ·¡½º/createProduct, registerProduct/MainŬ·¡½º/Factory MethodÆÐÅÏ »ó¼¼È÷ ¾Ë¾Æº¸±â/¿©·¯´ëÀÇ ¿¤¸®º£ÀÌÅÍ ¿¹Á¦/½ºÄÉÁÙ¸µ/º¹¼öÀÇ ¿¤¸®º£ÀÌÅ͸¦ ½ºÄÉÁÙ¸µÇؼ­ À̵¿½ÃŰ´Â Ŭ·¡½º ´ÙÀ̾î±×·¥/ElevatorManagerŬ·¡½º ¼Ò½º/ÁÖ¾îÁø ¼ö¸¸Å­ÀÇ ElevatorController¸¦ »ý¼ºÇÔ/requestElevator¸Þ¼Òµå/ElevatorControllerŬ·¡½º/ThroughputSchedulerŬ·¡½º/¼Ò½º ±¸ÇöÀÇ ¹®Á¦Á¡/µ¿Àû ½ºÄÉÁÙ¸µÀ» Áö¿øÇÒ ¼ö ÀÖµµ·Ï ¼öÁ¤µÈ ElevatorManagerŬ·¡½º ÄÚµå/requestElevatorÀÇ ÄÚµå º¯È­/ÇöÀç ½Ã°£¿¡ µû¶ó ÀûÀýÇÑ ½ºÄÉÁÙ¸µ °´Ã¼ »ý¼º/Ŭ·¡½º ´ÙÀ̾î±×·¥¿¡ Àû¿ë/»õ·Î¿î ½ºÄÉÁÙ¸µ Àü·«ÀÌ Ãß°¡µÇ´Â °æ¿ì/¹®Á¦Á¡À» ÇØ°áÀ» À§ÇÑ ¹æ¹ý/SchedulerFactoryŬ·¡½º Ãß°¡/SchedulerFactoryŬ·¡½º ¼Ò½º ±¸Çö/getScheduler¸Þ¼Òµå È£Ãâ/SchedulerFactoryŬ·¡½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖµµ·Ï ¼öÁ¤µÈ ElevatorManagerŬ·¡½º/½ºÄÉÁÙ¸µ Àü·«À» ¼³Á¤/ClientŬ·¡½º ÄÚµå º¸±â/»óȲ¿¡ µû¶ó ÀûÀýÇÑ °´Ã¼¸¦ »ý¼ºÇÏ´Â ÄÚµå ÀÚÁÖ Áߺ¹/Factory MethodÆÐÅÏÀÇ °³³äÀ» Àß º¸¿©ÁÖ´Â ±×¸²/Factory MethodÆÐÅÏÀÌ Àû¿ëµÈ ºÎºÐ/Factory MethodÆÐÅÏÀ» »ó¼ÓÀ» ÀÌ¿ëÇØ Àû¿ëÇÑ ´ÙÀ̾î±×·¥/ElevatorManager´Â getScheduler¸Þ¼Òµå¸¦ Ãß»ó¸Þ¼Òµå·Î Á¤ÀÇ/ElevatorManagerŬ·¡½ºÀÇ ÄÚµå/requestElevator¸Þ¼Òµå´Â getScheduler¸Þ¼Òµå¸¦ Ãß»ó¸Þ¼Òµå·Î Á¤ÀÇ/ÅÛÇø´ ¸Þ¼Òµå¿¡ ÇØ´ç/Factory Method PatternÀÇ Äݶ󺸷¹ÀÌ¼Ç ´ÙÀ̾î±×·¥/Factory Method PatternÀ» ¿¤¸®º£ÀÌÅÍ ¿¹Á¦¿¡ Àû¿ë/SingletonÆÐÅÏ/¿ä¼Ò¸¦ Çϳª¸¸ °¡Áö°í ÀÖ´Â ÁýÇÕ/°£´ÜÇÑ Å¬·¡½º ´ÙÀ̾î±×·¥/singletonŬ·¡½º »ý¼ºÀÚ/SingletonŬ·¡½º ¼Ò½º ÄÚµå/MainŬ·¡½º ¼Ò½º ÄÚµå/obj1°ú obj2°¡ µ¿ÀÏÇÑ °´Ã¼ÀÎÁö È®ÀÎ/PrinterŬ·¡½º/¿ÜºÎ¿¡¼­ »ý¼ºÀÚ¸¦ È£ÃâÇÒ ¼ö ¾øµµ·Ï Çϱâ/PrinterŬ·¡½ºÀÇ »ý¼ºÀÚ¸¦ private·Î ¼±¾ð/getPrinter¸Þ¼Òµå/getPrinter¸Þ¼Òµå¿Í printerº¯¼ö staticŸÀÔÀ¸·Î ¼±¾ð/Á¤Àû¸Þ¼Òµå·Î ¼±¾ð/5¸íÀÇ »ç¿ëÀÚ°¡ printer¸¦ ÀÌ¿ëÇÏ´Â »óȲÀ¸·Î ÄÚµå ÀÛ¼º/´ÙÁß ¾²·¹µå¿¡¼­ PrinterŬ·¡½º¸¦ ÀÌ¿ëÇÒ °æ¿ì/´ÙÁß ¾²·¹µå ¾ÖÇø®ÄÉÀ̼ǿ¡ ¹ß»ýÇÏ´Â ¹®Á¦ ÇØ°á¹æ¹ý/Á¤Àû º¯¼ö¿¡ ÀνºÅϽº¸¦ ¸¸µé¾î ÃʱâÈ­ÇÏ´Â ¹æ¹ý/ÀνºÅϽº¸¦ ¸¸µå´Â ¸Þ¼Òµå¿¡ µ¿±âÈ­ÇÏ´Â ¹æ¹ý/counterº¯¼ö Ãß°¡/print¸Þ¼ÒµåÀÇ counterº¯¼ö¸¦ º¯°æÇÏ´Â ºÎºÐ µ¿±âÈ­ ÇÊ¿ä/SingletonÆÐÅÏÀÇ ¼øÂ÷´ÙÀ̾î±×·¥/SingletonÆÐÅϰú Á¤Àû Ŭ·¡½ºÀÇ °ü°è/print¸Þ¼Òµå µ¿±âÈ­/UserThread 5°³ »ý¼º ÈÄ ½º·¹µå ½ÇÇà/Á¤Àû Ŭ·¡½º¸¦ »ç¿ëÇÒ ¼ö ¾ø´Â °æ¿ì/Printer ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â RealPrinter/UsePrinter¼Ò½º ÄÚµå È®ÀÎ/Printer ÀÎÅÍÆäÀ̽º È®ÀÎ/Å×½ºÆ®¿ë °¡Â¥ ÇÁ¸°ÅÍÀÎ FakePrinterÈ®ÀÎ/doSomething¸Þ¼Òµå·Î ÀÎÅÍÆäÀ̽ºÀÇ ´ÜÀ§Å×½ºÆ®¸¦ ÇÏ´Â »óȲ °¡Á¤/Á¤Àû Ŭ·¡½ºÀÇ ¹®Á¦¸¦ ½Ì±ÛÅÏ ÆÐÅÏÀ¸·Î ÇØ°á/Á¤Àû setter¸Þ¼Òµå »ç¿ë/DoSomethingTest/°¡Â¥ Printer°´Ã¼ ÁÖÀÔ/SingletonÆÐÅÏ Á¤¸®
  • 10.49ºÐ µðÀÚÀÎ ÆÐÅϵé part4
    Singleton, Prototype, Builder, Abstract Factory
    SingletonÆÐÅÏ/ÆÑÅ丮¸Þ¼Òµå ÆÐÅÏ ¼³°èºÎºÐ º¸±â/SchedylerFactoryŬ·¡½º/RESPONSE_TIME, THROUGHPUT, DYNAMIC/Client classÈ®ÀÎ/Áߺ¹µÇ¾î »ý¼º/SingletonÆÐÅÏÀ» Àû¿ëÇÑ ¼³°èºÎºÐ/SingletonÆÐÅÏÀ» Àû¿ëÇÑ SchedylerFactoryŬ·¡½º/SingletonÆÐÅÏÀ¸·Î ±¸ÇöÇÑ ThroughputScheduler, ResponseTimeScheduler/Abstract Factory Pattern¿¡¼­ SingletonÆÐÅÏÀ» Àû¿ëÇÏ´Â °úÁ¤/Á¦Ç°±ºº° °´Ã¼ »ý¼º/MotorŬ·¡½º È®ÀÎ/ÅÛÇø´ ¸Þ¼Òµå ÆÐÅÏ/Client3 ¼Ò½º È®ÀÎ/Á¦Á¶ ¾÷üº° Factory°´Ã¼/Á¦Á¶ ¾÷üº° FactoryŬ·¡½º¸¦ SingletonÆÐÅÏÀ¸·Î ¼³°è/¼Ò½º ÄÚµå È®ÀÎ/Client4 Ŭ·¡½º ÄÚµå/PrototypeÆÐÅÏ/Ŭ·¡½º À̸§À» ÁöÁ¤ÇÏÁö ¾Ê°í ÀνºÅϽº¸¦ »ý¼ºÇÒ ¶§/Á¾·ù°¡ ³Ê¹« ¸¹¾Æ Ŭ·¡½º·Î Á¤¸®µÇÁö ¾Ê´Â °æ¿ì/Ŭ·¡½º·ÎºÎÅÍ ÀνºÅϽº »ý¼ºÀÌ ¾î·Á¿î °æ¿ì/framework¿Í »ý¼ºÇÒ ÀνºÅϽº¸¦ ºÐ¸®ÇϰíÀÚ ÇÒ °æ¿ì/PrototypeÆÐÅÏÀ» »ç¿ëÇÑ ¿¹Á¦/product ÀÎÅÍÆäÀ̽º/UnderlinePenŬ·¡½º¿Í MessageBoxŬ·¡½º/product ÀÎÅÍÆäÀ̽º ¼Ò½º ÄÚµå È®ÀÎ/use¸Þ¼Òµå/createClone¸Þ¼Òµå/ManagerŬ·¡½º/proto/ÇÏÀ§Å¬·¡½º »ìÆìº¸±â/decochar/MessageBoxŬ·¡½º ¼Ò½º ÄÚµå È®ÀÎ/clone¸Þ¼Òµå·Î º¹»ç °¡´ÉÇÑ °Í/ÀڽŠ¶Ç´Â ÇÏÀ§ Ŭ·¡½º¿¡¼­¸¸ È£Ãâ/UnderlinePenŬ·¡½ºÀÇ ¼Ò½º ÄÚµå È®ÀÎ/PrototypeÆÐÅÏÀÇ ¿ªÇÒÀ» ³ªÅ¸³»´Â Ŭ·¡½º ´ÙÀ̾î±×·¥/Á¾·ù°¡ ³Ê¹« ¸¹¾Æ Ŭ·¡½º·Î Á¤¸®µÇÁö ¾Ê´Â °æ¿ì/Ŭ·¡½º·ÎºÎÅÍ ÀνºÅϽº »ý¼ºÀÌ ¾î·Á¿î °æ¿ì/framework¿Í »ý¼ºÇÒ ÀνºÅϽº¸¦ ºÐ¸®ÇϰíÀÚ ÇÒ °æ¿ì/Clone¾Ë¾Æº¸±â/CloneÀÌ ³»ºÎÀûÀ¸·Î ÇÏ´Â ÀÏ/CloneableÀÎÅÍÆäÀ̽º/BuilderÆÐÅÏÀÇ °³³ä/BiilderÆÐÅÏÀÇ ¿¹Á¦/Ŭ·¡½ºÀÇ ±¸¼º È®ÀÎ/BuilderŬ·¡½º/BuilderŬ·¡½ºÀÇ ÇÏÀ§ Ŭ·¡½º/BuilderŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/DirectorŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/construct¸Þ¼Òµå/TextBuilderŬ·¡½º ¼Ò½º ÄÚµå/HTMLBuilderŬ·¡½º ¼Ò½º ÄÚµå/MainŬ·¡½º ¼Ò½º ÄÚµå/µ¿ÀÏÇÑ ¸Þ¼Òµå/BuilderÆÐÅÏÀÇ ¿ªÇÒ/ConcreteBuilderÀÇ ¿ªÇÒ/DirectorÀÇ ¿ªÇÒ/ClientÀÇ ¿ªÇÒ/¼øÂ÷´ÙÀ̾î±×·¥/Director¼Ò½º ÄÚµå È®ÀÎ/BuilderŬ·¡½º¸¦ ¼öÁ¤ÇÏ´Â °Í
  • 11.56ºÐ µðÀÚÀÎ ÆÐÅϵé part5
    Bridge, Strategy, Composite
    BridgeÆÐÅÏÀÇ ¿ªÇÒ/±â´ÉÀÇ Å¬·¡½º °èÃþ/±â´ÉÀ» Ãß°¡Çϱâ À§ÇØ ¸¸µé¾îÁø °èÃþ/±¸ÇöÀÇ Å¬·¡½º °èÃþ/Ŭ·¡½º °èÃþ µîÀå/BridgeÆÐÅÏÀÇ ¿¹Á¦/4°³ÀÇ Å¬·¡½º/Display¿Í CountDisplay´Â ±â´ÉÀÇ Å¬·¡½º °èÃþ/DisplayImpl°ú StringDisplayImpl´Â ±¸ÇöÀÇ Å¬·¡½º °èÃþ/DisplayŬ·¡½ºÀÇ ¼Ò½º/Àμö·Î Àü´ÞµÈ ÀνºÅϽº/open, print, close¸Þ¼Òµå/¸Þ¼Òµå¸¦ ½ÇÇàÇϱâ À§ÇØ implÇʵåÀÇ ±¸Çö ¸Þ¼Òµå »ç¿ë/CountDisplayŬ·¡½º ¼Ò½º/multiDisplayÃß°¡/DisplayImplŬ·¡½º ¼Ò½º/StringDisplayImplŬ·¡½º ¼Ò½º/MainŬ·¡½º ¼Ò½º/º¯¼ö d1, d2, d3/d3´Â multiDisplayµµ È£Ãâ/Abstraction¿ªÇÒ/RefinedAbstraction¿ªÇÒ/Implementor¿ªÇÒ/ConcreteImplementor¿ªÇÒ/±â´ÉÀ» Ãß°¡ ÇÒ °æ¿ì/»ó¼Ó°ú À§ÀÓ/¿¹Á¦¿¡¼­ À§ÀÓ »ç¿ë/StrategyÆÐÅÏ/StrategyÆÐÅÏÀ» »ç¿ëÇÑ °ÔÀÓ ¿¹Á¦/HandŬ·¡½º ¼Ò½º/HandŬ·¡½ºÀÇ ÀνºÅϽº 3°³ ÀÛ¼º/°¡À§¹ÙÀ§º¸ÀÇ ½ÂÆÐ ºñ±³/fight¸Þ¼Òµå/ÆÛ¼¾Æ® ¿¬»êÀÚ »ç¿ë/StrategyÀÎÅÍÆäÀ̽º/study¸Þ¼Òµå/WinningStrategyŬ·¡½º/randomÀÌ¿ë/ProbStrategyŬ·¡½º/historyÇʵå/getSum/study¸Þ¼Òµå/PlayerŬ·¡½º/win, lose, even¸Þ¼Òµå/MainŬ·¡½º/player1°ú player2/for¹® »ç¿ë/RobotÀÇ ¿¹Á¦/RobotŬ·¡½º ¼Ò½º/RobotA¿Í RobotB °¢°¢ attack°ú move±¸Çö/»õ·Î¿î ³»¿ëÀ¸·Î º¯°æÀ» À§ÇØ ±âÁ¸ ÄÚµå ¼öÁ¤/±â´ÉÀÌ Áߺ¹µÇ´Â »óȲ/»õ·Î¿î RobotÀ» Ãß°¡/Robot¼³°èÀÇ ¹®Á¦ ÇØ°á/±¸Ã¼ÀûÀÎ À̵¿¹æ½Ä°ú °ø°Ý¹æ½ÄÀ» ´ãÀº Ŭ·¡½º/RobotŬ·¡½º¿¡ setMovingStrategy¿Í setAttackStrategy¸Þ¼Òµå Á¤ÀÇ/°è¼±µÈ ¼³°è¸¦ ÄÚµå·Î º¯°æ/MovingStrategyÀÎÅÍÆäÀ̽º ¼±¾ð/AttackStrategyÀÎÅÍÆäÀ̽º ¼±¾ð/ClientŬ·¡½º ¼Ò½º/Strategy PatternÀÇ °¢ ¿ªÇÒ/StrategyÀÎÅÍÆäÀ̽º/ConcreteStrategy¿ªÇÒ/Context¿ªÇÒ/CompositeÆÐÅÏ/EntryŬ·¡½º/EntryŬ·¡½ºÀÇ ¼Ò½º/ÇÏÀ§Å¬·¡½ºÀÎ File°ú Directory/getName¸Þ¼Òµå ÇÏÀ§Å¬·¡½º¿¡¼­ ±¸Çö/getSize¸Þ¼Òµå ÇÏÀ§Å¬·¡½º¿¡¼­ ±¸Çö/add ±¸Çö/printList¸Þ¼Òµå/toString¸Þ¼Òµå/FileŬ·¡½º ¼Ò½º/DirectoryŬ·¡½º ¼Ò½º/getSize¸Þ¼Òµå º¸±â/add¸Þ¼Òµå º¸±â/printList¸Þ¼Òµå º¸±â/FileTreatmentExceptionŬ·¡½º
  • 12.56ºÐ µðÀÚÀÎ ÆÐÅϵé part6
    Composite, Decorator
    CompositeÆÐÅÏÀÇ MainŬ·¡½º ¼Ò½º/µð·ºÅ丮 °èÃþ È®ÀÎ/usrµð·ºÅ丮¿¡ »õ·Î¿î µð·ºÅ丮 »ý¼º/add¸Þ¼Òµå ±¸Çö ¹æ¹ý/EntryŬ·¡½º¿¡¼­ ±¸ÇöÇÏ°í ¿¡·¯¸¦ ³Ñ°ÜÁÖ´Â ¹æ¹ý/EntryŬ·¡½º¿¡¼­ ±¸ÇöÇÏ°í ¾Æ¹«°Íµµ ½ÇÇàÇÏÁö ¾Ê´Â ¹æ¹ý/EntryŬ·¡½º¿¡¼­ ¼±¾ðÇÏÁö¸¸ ±¸ÇöÇÏÁö ¾Ê´Â ¹æ¹ý/DirectoryŬ·¡½º¿¡¸¸ add¸¦ ³Ö´Â ¹æ¹ý/CompositeÆÐÅÏÀÇ ±¸Á¶/Computer¸ðµ¨¸µ ÇÏ´Â ¿¹Á¦/Keyboard, Body, MonitorŬ·¡½º Á¤ÀÇ/ÄÄÇ»ÅÍŬ·¡½º ºÎǰÀ» Ç¥ÇöÇÑ Å¬·¡½º ´ÙÀ̾î±×·¥/ÇÕ¼º°ü°è Ç¥½Ã/Keyboard, Body, MonitorŬ·¡½ºÀÇ ÄÚµå/ComputerŬ·¡½ºÀÇ ÄÚµå/addBody, addKeyboard, addMonitor¸Þ¼Òµå/ClientŬ·¡½ºÀÇ ÄÚµå/¼³°èÀÇ ¹®Á¦Á¡/Speaker°´Ã¼¸¦ Áö¿øÇÒ ¼ö ÀÖµµ·Ï ComputerŬ·¡½º¸¦ È®ÀåÇÏ´Â ¹æ¹ý/SpeakerŬ·¡½º ÄÚµå/SpeakerŬ·¡½º¸¦ Áö¿øÇÏ´Â ComputerŬ·¡½º ÄÚµå/ComputerŬ·¡½ºÀÇ Äڵ带 º¯°æÇؾ߸¸ ÇÏ´Â ¼³°è/ocp¸¦ ÁؼöÇÒ ¼ö ÀÖµµ·Ï °³¼±ÇÑ ComputerŬ·¡½ºÀÇ Å¬·¡½º ´ÙÀ̾î±×·¥/ComputerDeviceŬ·¡½º Á¤ÀÇ/ComputerŬ·¡½ºµµ ComputerDeviceÀÇ ÇÏÀ§Å¬·¡½º·Î Á¤ÀÇ/ComputerDeviceÃß»óŬ·¡½º ÄÚµå/º¯°æµÈ ComputerŬ·¡½º È®ÀÎ/addComponent¸Þ¼Òµå/°³¼±µÈ ComputerŬ·¡½º¸¦ ÀÌ¿ëÇÏ´Â ClientŬ·¡½º ÄÚµå/SpeakerŬ·¡½º¸¦ ComputerDeviceÀÇ ÇÏÀ§Å¬·¡½º·Î ±¸Çö/Client¿¡ SpeakerÃß°¡µÈ °Í È®ÀÎ/Composite PatternÀÇ °¢ ¿ªÇÒ/DecoratorÆÐÅÏ/¹®ÀÚ¿­ ÁÖº¯¿¡ Àå½ÄÀ» Ç¥½ÃÇÏ´Â ¿¹Á¦/Display´Â ¹®ÀÚ¿­ Ç¥½Ã¿ë Ãß»óŬ·¡½º/DisplayŬ·¡½ºÀÇ ÄÚµå/show¸Þ¼Òµå/StringDisplayŬ·¡½º ÄÚµå/BorderŬ·¡½º ÄÚµå/SideBorderŬ·¡½º/getColumns¸Þ¼Òµå-¹®ÀÚ¼ö °è»ê/getRows¸Þ¼Òµå/getRowText¸Þ¼Òµå/FullBorderŬ·¡½º ÄÚµå/makeLine¸Þ¼Òµå/MainŬ·¡½º ÄÚµå/ÀνºÅϽº b1, b2, b3ÀÇ °ü°è È®ÀÎ/³×ºñ°ÔÀÌ¼Ç ¿¹Á¦/RoadDisplayŬ·¡½º ¼Ò½º/draw¸Þ¼Òµå ±¸Çö/¼Ò½º ÄÚµåÀÇ ¹®Á¦Á¡/µµ·Î Ç¥½Ã ±â´ÉÀ» Ãß°¡·Î ±¸ÇöÇÏ´Â °æ¿ì/RoadDisplayWithTrafficŬ·¡½º Á¤ÀÇ/RoadDisplay¿¡¼­ »ó¼Ó¹ÞÀº draw¸Þ¼Òµå ¿À¹ö¶óÀ̵å/RoadDisplayWithTrafficŬ·¡½º ÄÚµå/¿©·¯°¡Áö Ãß°¡±â´ÉÀ» Á¶ÇÕÇØ¾ß ÇÏ´Â °æ¿ì/LaneDecorator¿Í TrafficDecorator¸¦ ÀÌ¿ëÇÑ ¼³°è/DisplayŬ·¡½º/DisplayDecoratorŬ·¡½º/LaneDecoratorŬ·¡½º/TrafficDecoratorŬ·¡½º/ClientŬ·¡½º ¼Ò½º ÄÚµå È®ÀÎ/µ¿ÀÏÇÑ DisplayŬ·¡½º¸¦ ÅëÇØ µµ·Î Á¤º¸ Ç¥½Ã/±³Â÷·Î¸¦ Ç¥½ÃÇÏ´Â ±â´ÉÀ» Ãß°¡ÇÏ·Á¸é CrossingDecoratorŬ·¡½º Ãß°¡/³»¿ëÀº ´Ù¸¥ DecoratorŬ·¡½º¿Í À¯»ç/Ãß°¡±â´ÉÀ» µ¿ÀûÀ¸·Î »ý¼ºÇÏ´Â ¿¹Á¦/Decorator PatternÀÇ °¢ ¿ªÇÒ
  • 13.53ºÐ µðÀÚÀÎ ÆÐÅϵé part7
    Visitor, Chain of Responsibility
    VisitorÆÐÅÏ/µ¥ÀÌÅͱ¸Á¶¿Í ó¸® ºÐ¸®/VisitorÆÐÅÏÀÇ ¿¹Á¦¸¦ À§ÇÑ Å¬·¡½º´ÙÀ̾î±×·¥/VisitorŬ·¡½º/Element/ListVisitor/EntryÀÇ ÇÏÀ§ Ŭ·¡½º File°ú Directory/VisitorŬ·¡½º ÀÚ¼¼È÷ º¸±â/visit¶ó´Â µ¿ÀÏÇÑ À̸§ÀÇ ¸Þ¼Òµå¸¦ 2°³ ¼±¾ð/VisitorŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/ElementÀÎÅÍÆäÀ̽º/EntryŬ·¡½º/accept¸¦ ½ÇÁ¦·Î ±¸ÇöÇÏ´Â EntryÀÇ ÇÏÀ§Å¬·¡½º/add¸Þ¼Òµå´Â EntryŬ·¡½º¿¡¼­ ¿¹¿Üó¸®/iterator¸Þ¼Òµå EntryŬ·¡½º¿¡¼­ ¿¹¿Üó¸®/FileŬ·¡½º/accept¸Þ¼Òµå/DirectoryŬ·¡½º/iterator¸Þ¼Òµå/ListVisitorŬ·¡½º/ListVisitorŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/visit file ¸Þ¼Òµå/visit directory ¸Þ¼Òµå/FileŬ·¡½º ¼Ò½º ÄÚµå/MainŬ·¡½º ¼Ò½º ÄÚµå/ListVisitorÀÇ ÀνºÅϽº¸¦ »ç¿ë/FileŬ·¡½º¿Í DirectoryŬ·¡½º, ListVisitorÀÇ °ü°è/Entry´Â Element±¸Çö/»óÈ£ È£Ãâ¿¡ °üÇÑ ³»¿ë/ÇÑ Directory¿¡ 2°³ÀÇ FileÀÌ ÀÖÀ» ¶§ÀÇ Ã³¸®/DirectoryÀνºÅϽº³ª FileÀνºÅϽº´Â accept¸Þ¼Òµå È£Ãâ/VisitorÆÐÅÏÀÇ °¢ ¿ªÇÒ/VisitorÀÇ ¿ªÇÒ/ConcreteVisitorÀÇ ¿ªÇÒ/ElementÀÇ ¿ªÇÒ/ConcreteElementµéÀÇ ¿ªÇÒ/ObjectStructureÀÇ ¿ªÇÒ/VisitorÆÐÅÏÀÇ ¸Þ¼Òµå È£Ãâ/´õºí µð½ºÆÐÄ¡(double dispatch)/OCP/ÁÖÀÇÇÒ Á¡/»õ·Î¿î ConcreteVisitorÀÇ ¿ªÇÒ Ãß±¸/ConcreteElementÀÇ ¿ªÇÒ Ãß°¡´Â º¹Àâ/µ¥ÀÌÅÍ ±¸Á¶ÀÇ ¿ä¼Ò¿¡ ´ëÇÑ Ã³¸®¸¦ µû·Î ºÐ¸®/VisitorÆÐÅÏ¿¡ ´ëÇÑ Á¤¸®/Chain of ResponsibilityÆÐÅÏ/Chain of ResponsibilityÆÐÅÏÀ» »ç¿ëÇÑ ¿¹Á¦/TroubleŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/SupportŬ·¡½º/SupportŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/resolve¸Þ¼Òµå/NoSupportŬ·¡½º/LimitSupportŬ·¡½º/OddSupportŬ·¡½º/SpecialSupportŬ·¡½º/MainŬ·¡½º/setNext¸Þ¼Òµå »ç¿ë/Chain of ResponsibilityÆÐÅÏÀÇ °¢ ¿ªÇÒ/HandlerÀÇ ¿ªÇÒ/ConcreteHandlerÀÇ ¿ªÇÒ/ClientÀÇ ¿ªÇÒ/Chain of ResponsibilityÆÐÅÏÀ» »ç¿ëÇÏÁö ¾ÊÀ» °æ¿ì/Chain of ResponsibilityÆÐÅÏÀ» »ç¿ëÇÒ ¶§ °í·ÁÇÒ Á¡/Chain of Responsibility Á¤¸®
  • 14.56ºÐ µðÀÚÀÎ ÆÐÅϵé part8
    Facade, Mediator
    FacadeÆÐÅÏ/»óÈ£ °ü·ÃµÈ Ŭ·¡½º Á¦¾î/»ç¿ëÀÚÀÇ À¥ÆäÀÌÁö¸¦ ÀÛ¼ºÇÏ´Â ¿¹Á¦/DatabaseŬ·¡½º/DatabaseŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/HtmlWriterŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/title¸Þ¼Òµå Á¦ÀÏ ¸ÕÀú È£Ãâ/PageMakerŬ·¡½º ¼Ò½º ÄÚµå/MainŬ·¡½º ¼Ò½º ÄÚµå/FacadeÆÐÅÏÀ¸·Î »ý°¢ÇÑ ¿ªÇÒ/½Ã½ºÅÛÀ» ±¸¼ºÇÏ´Â ¿ªÇÒ/FacadeÀÇ ¿ªÇÒ/ÀÎÅÍÆäÀ̽ºÀÇ ¼ö°¡ ÀûÀº °Í/È®Àå½ÃÄѼ­ FacadeÆÐÅÏ Àû¿ë/Ãß»óÆÑÅ丮 ÆÐÅϰú °ü·Ã/FacadeÆÐÅÏ Á¤¸®/MediatorÆÐÅÏ/MediatorÆÐÅÏÀÇ ¿¹Á¦ Ŭ·¡½º ´ÙÀ̾î±×·¥/»ç¿ëÀÚ LoginÀÎ °æ¿ì/°Ô½ºÆ® LoginÀÎ °æ¿ì/OK³ª Cancle¹öưÀº °¢°¢ÀÇ ´Ù¸¥ Ŭ·¡½º·Î Á¤ÀÇ/´Ù¼öÀÇ ¿ÀºêÁ§Æ® »çÀ̸¦ Á¶Á¤ÇØ¾ß ÇÒ °æ¿ì MediatorÆÐÅÏ »ç¿ë/¿¹Á¦ÀÇ Å¬·¡½º »ìÆìº¸±â/LoginFrameÀÇ ±¸¼º/MediatorÀÎÅÍÆäÀ̽º/createColleagues¸Þ¼Òµå/colleagueChanged¸Þ¼Òµå/ColleagueÀÎÅÍÆäÀ̽º/setMediator¸Þ¼Òµå/setColleagueEnabled¸Þ¼Òµå/ColleagueButtonŬ·¡½º/mediatorÇʵå/setColleagueEnabled¸Þ¼Òµå/ColleagueTextFieldŬ·¡½º/textValueChanged¸Þ¼Òµå/ColleagueCheckboxŬ·¡½º/LoginFrameŬ·¡½º/createColleagues¸Þ¼Òµå/colleagueChanged¸Þ¼Òµå/userpassChanged¸Þ¼Òµå/LoginFrameÀÇ »ý¼ºÀÚ ºÎºÐ/¸®½º³ÊÀÇ ¼³Á¤ ¼öÇà/colleagueChanged¸Þ¼Òµå ³»¿ë º¸±â/MainŬ·¡½º/MediatorÆÐÅÏÀ» º¸°í °¢ ¿ªÇÒ ¾Ë¾Æº¸±â/ConcreteMediatorÀÇ ¿ªÇÒ/ColleagueÀÎÅÍÆäÀ̽ºÀÇ ¿ªÇÒ/ConcreteColleagueÀÇ ¿ªÇÒ/MediatorÆÐÅÏÀÇ ¿¹Á¦/¹Ìµð¾îÇ÷¹À̾îÀÇ ÁÖ¿ä±â´É/°¢ ¿µ¿ªÀ» º°µµÀÇ Å¬·¡½º·Î ±¸Çö-ÀÇÁ¸°ü°è Çü¼º/Àç»ç¿ëÀÌ ¾î·Á¿î ´ÜÁ¡/ÇÔ²² »ç¿ëµÇ´Â Ŭ·¡½º°¡ Áõ°¡ÇÒ¼ö·Ï °³º° Ŭ·¡½ºÀÇ ¼öÁ¤ÀÌ ¾î·Á¿öÁö´Â ´ÜÁ¡/¹®Á¦Á¡ ÇØ°áÀ» À§ÇØ MediatorÆÐÅÏ »ç¿ë/VideoListUIÀÇ ¼Ò½º ÀϺκРȮÀÎ/VideoMediatorÀÇ ¼Ò½º ÀϺκРȮÀÎ/MediaController¿Í VideoMediatorÀÇ ÀÇÁ¸ ºÎºÐ/MediatorÆÐÅÏÀÇ ´ÜÁ¡/Ãß»ó MediatorŬ·¡½ºÀÇ Àç»ç¿ë/select¸Þ¼Òµå¿Í volumeChanged¸Þ¼ÒµåÀÇ ±¸Çö/MediatorÆÐÅÏ Á¤¸®
  • 15.55ºÐ µðÀÚÀÎ ÆÐÅϵé part9
    Observer ÆÐÅÏ
    ObserverÆÐÅÏ/¿¹Á¦¸¦ À§ÇÑ Å¬·¡½º ´ÙÀ̾î±×·¥ È®ÀÎ/ObserverÀÎÅÍÆäÀ̽º/update¸Þ¼Òµå/NumberGeneratorŬ·¡½º/addObserver¸Þ¼Òµå/notifyObservers¸Þ¼Òµå/RandomNumberGeneratorŬ·¡½º/DigitObserverŬ·¡½º/GraphObserverŬ·¡½º/MainŬ·¡½º¸¦ º¸¸ç Observer»ç¿ë È®ÀÎ/execute¸¦ ÇÒ °æ¿ì/¿©·¯°¡Áö ¹æ½ÄÀ¸·Î ¼ºÀûÀ» Ãâ·ÂÇÏ´Â ¿¹Á¦/ScoreRecordŬ·¡½º¿Í DataSheetViewŬ·¡½º ÇÊ¿ä/ScoreRecordŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/DataSheetViewŬ·¡½º ¼Ò½º ÄÚµå/ClientŬ·¡½º ¼Ò½º ÄÚµå/addScore¸Þ¼Òµå È£Ãâ/ÁÖÀÇÁ¡/addScore¸Þ¼Òµå¸¦ È£ÃâÇÒ ¶§ dateSheetViewÀÇ update¸Þ¼Òµå È£Ãâ/¼ºÀûÀ» ´Ù¸¥ ÇüÅ·ΠÃâ·ÂÇÏ°í ½ÍÀ» °æ¿ìÀÇ º¯°æ ÀÛ¾÷/ÃÖ¼Ò, ÃÖ´ë°ª¸¸ Ãâ·Â/ScoreRecordºÎÅÍ ¼Ò½º º¯°æ/MinMaxViewŬ·¡½º Ãß°¡/displayMinMax¸Þ¼Òµå´Â CollectionsŬ·¡½º ÀÌ¿ë/ocp¿¡ À§¹è°¡ µÇ´Â ÀÛ¾÷/µ¿½Ã¿¡ ¶Ç´Â ¼øÂ÷ÀûÀ¸·Î ¼ºÀûÀ» Ãâ·ÂÇÏ´Â °æ¿ì/Àû¿ëÇÑ ScoreRecordŬ·¡½º ¼Ò½º/dataSheetViewsÇʵå/setMinMaxView¸Þ¼Òµå/ClientŬ·¡½º/Ãâ·Â º¯°æÀ» »õ·Î¿î Ŭ·¡½º¿¡ Å뺸ÇÒ ¶§¸¶´Ù ¹Ýº¹ÀûÀ¸·Î ¹ß»ý/°øÅë±â´ÉÀ» »óÀ§Å¬·¡½º ¹× ÀνºÅϽº·Î ÀϹÝÈ­ ½Ã۰í Ȱ¿ëÇØ ScoreRecord±¸Çö/°³¼±ÇÑ ScoreRecordŬ·¡½º ´ÙÀ̾î±×·¥/SubjectŬ·¡½º Á¤ÀÇ/ScoreRecordŬ·¡½ºÀÇ ¼Ò½º ±¸¼º/Ãß»óŬ·¡½º Subject/attach¸Þ¼Òµå¿Í detach¸Þ¼Òµå/ScoreRecordŬ·¡½º/DataSheetViewŬ·¡½º¿Í MinMaxViewŬ·¡½º´Â ±âÁ¸ ÄÚµå¿Í µ¿ÀÏ/ClientŬ·¡½º ¼Ò½º ÄÚµå/¼ºÀûº¯°æ¿¡ °ü½ÉÀÌ ÀÖ´Â ´ë»ó°´Ã¼µéÀÇ °ü¸®´Â SubjectŬ·¡½º¿¡¼­ ±¸Çö/¸ñ·ÏÃâ·Â°ú ÃÖ¼Ò/ÃÖ´ë°ª Ãâ·Â, ÇÕ°è¿Í Æò±Õ Ãâ·Â/StatisticsViewŬ·¡½º/update¸Þ¼Òµå/displayStatistics¸Þ¼Òµå/ClientŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/ObserverÆÐÅϸ¸º¼ ¼ö ÀÖµµ·Ï ±¸¼ºÇÑ Å¬·¡½º ´ÙÀ̾î±×·¥/ObserverÀÇ ¿ªÇÒ/SubjectÀÇ ¿ªÇÒ/ConcreteSubjectÀÇ ¿ªÇÒ/ConcreteObserverÀÇ ¿ªÇÒ/SubjectŬ·¡½ºÀÇ notifyObservers¸Þ¼Òµå È£Ãâ/´ÙÀ½ ¿¹Á¦/StatusCheckerŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/º¯°æµÈ Ŭ·¡½º ´ÙÀ̾î±×·¥ È®ÀÎ/»óŰ¡ º¯°æµÉ ¶§ ÀÓÀÇÀÇ °´Ã¼¿¡°Ô º¯°æ»ç½Ç Å뺸/ObserverÆÐÅÏ Àû¿ë/notifyStatus¸Þ¼Òµå°¡ µî·ÏµÈ Observer°´Ã¼ÀÇ omAbnormalStatus¸Þ¼Òµå È£Ãâ/StatusSubjectŬ·¡½º/notifyStatus¸Þ¼Òµå/StatusCheckerŬ·¡½º/StatusObserverÀÎÅÍÆäÀ̽º/Observer¸¦ µî·ÏÇÏ´Â ºÎºÐ/ObserverÆÐÅÏÀ» Àû¿ëÇÒ ¶§ÀÇ ÀåÁ¡/Observer°´Ã¼¿¡°Ô »óŸ¦ Àü´ÞÇÏ´Â ¹æ¹ý
  • 16.60ºÐ µðÀÚÀÎ ÆÐÅϵé part10
    Observer, Memento, state
    ObserverÆÐÅÏ/Subject°´Ã¼ ±¸ºÐ/OnClickListenerÀÎÅÍÆäÀ̽º°¡ ObserverÀÎÅÍÆäÀ̽º/onClickÇßÀ» ¶§ loginÇÒ ¼ö ÀÖµµ·Ï ±¸Çö/onCreate¸Þ¼Òµå/onClick¸Þ¼Òµå¿¡¼­ id°ª »ç¿ë/ObserverÆÐÅÏÀ» ±¸ÇöÇÒ ¶§ °í·ÁÇØ¾ß ÇÒ »çÇ×/ÁÖÁ¦ °´Ã¼ÀÇ ÅëÁö ±â´É ½ÇÇà ÁÖü/Client¿¡¼­ ¿©·¯ StatusChecker¸¦ µÎ°í Á¶°ÇÀ» ¸¸Á·ÇÏ´ÂÁö È®ÀÎ/Subject°´Ã¼¿¡¼­ Á÷Á¢ ÅëÁö±â´ÉÀ» ½ÇÇàÇÏ´Â °ÍÀÌ ±¸Çö¿¡ À¯¸®/¿ÉÀú¹ö ÀÎÅÍÆäÀ̽ºÀÇ ºÐ¸®/EventObserverÀÎÅÍÆäÀ̽º/ConcreteObserverŬ·¡½º´Â ¸ðµç ¸Þ¼Òµå ±¸Çö/ÅëÁö ½ÃÁ¡¿¡¼­ÀÇ ÁÖÁ¦ °´Ã¼ »óÅÂ/SomeSubject¸¦ »ó¼Ó¹Þ°í ÀÖ´Â AnySubjectŬ·¡½º/¿ÉÀú¹ö °´Ã¼°¡ ¿Ã¹Ù¸£Áö ¾ÊÀº °ªÀ» »ç¿ëÇÏ´Â ¹®Á¦ ¹ß»ý/ÅÛÇø´ ¸Þ¼Òµå ÆÐÅÏÀ» Àû¿ëÇÑ ¿¹/»óÀ§Å¬·¡½º°¡ Á¦¾îÀÇ È帧 °áÁ¤/¿ÉÀú¹ö °´Ã¼ÀÇ ½ÇÇà Á¦¾à Á¶°Ç/notifyToObserver¸Þ¼Òµå/¿ÉÀú¹ö ÀÎÅÍÆäÀ̽º¸¦ Á¤ÀÇÇÒ ¶§´Â ¿ÉÀú¹ö ¸Þ¼ÒµåÀÇ ½ÇÇà Á¦ÇÑ¿¡ ´ëÇÑ ±âÁØ ÇÊ¿ä/ObserverÆÐÅÏÀÇ Á¤¸®/MementoÆÐÅÏ/ĸ½¶È­ÀÇ ÆÄ±«¿¡ ºüÁöÁö ¾Ê°í ÀúÀå°ú º¹¿ø ½ÇÇà/undo, redo, history, snapshot ½ÇÇà/MementoÆÐÅÏÀÇ ¿¹Á¦ Ŭ·¡½º ´ÙÀ̾î±×·¥/°ÔÀÓ±ÔÄ¢ »ìÆìº¸±â/ÇÁ·Î±×·¥¿¡¼­ Memento¸¦ ¾î¶»°Ô »ç¿ëÇÏ´ÂÁö È®ÀÎ/MementoŬ·¡½º º¸±â/moneyÇʵå¿Í fruitsÇÊµå º¸±â/MementoŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/addFruit¸Þ¼Òµå/GamerŬ·¡½º ¼Ò½º ÄÚµå/Áß½ÉÀ̵Ǵ bet¸Þ¼Òµå/createMemento¸Þ¼Òµå/restoreMemento¸Þ¼Òµå/MainŬ·¡½º ¼Ò½º ÄÚµå/MementoÆÐÅÏ Àû¿ë/createMemento¸¦ ÅëÇØ ÇöÀç»óÅ ÀúÀå/½ÃÄö½º ´ÙÀ̾î±×·¥À¸·Î ³ªÅ¸³»¼­ ÇÐÀÎ/MementoÆÐÅÏÀÇ ¿ªÇÒ/OriginatorÀÇ ¿ªÇÒ/MementoÀÇ ¿ªÇÒ/wide interface: ³ÐÀº ÀÎÅÍÆäÀ̽º/narrow interface: Á¼Àº ÀÎÅÍÆäÀ̽º/CaretakerÀÇ ¿ªÇÒ/Memento¿ªÇÒÀÌ °®´Â Á¼Àº ÀÎÅÍÆäÀ̽º¸¸ »ç¿ë/ÀÚ¹ÙÀÇ ¿¢¼¼½º Á¦¾î ±â´É »ç¿ë/Caretaker¿ªÇÒÀÇ MainŬ·¡½º/MainŬ·¡½º°¡ ÇÒ ¼ö ÀÖ´Â ÀÏ/MementoÀÇ °³¼ö¿Í À¯È¿±â°£/CaretakerÀÇ ¿ªÇÒ°ú OriginatorÀÇ ¿ªÇÒÀ» ºÐ¸®ÇÏ´Â ÀÌÀ¯/MementoÆÐÅÏÀÇ Á¤¸®/StateÆÐÅÏ/»óŸ¦ Ŭ·¡½º·Î Ç¥Çö/StateÆÐÅÏÀ» »ç¿ëÇÑ ¿¹Á¦/¿¹Á¦¸¦ À¯»çÄÚµùÀ¸·Î ÀÛ¼º/StateÆÐÅÏÀ» »ç¿ëÇØ À¯»çÄÚµùÀ¸·Î ÀÛ¼º/µÎ ÄÚµåÀÇ Â÷ÀÌÁ¡/¿¹Á¦ÀÇ Å¬·¡½º ´ÙÀ̾î±×·¥/StateÀÎÅÍÆäÀ̽º/»óÅ ÀÇÁ¸ ¸Þ¼ÒµåÀÇ ÁýÇÕ/DayStateŬ·¡½º/DayStateŬ·¡½ºÀÇ ¼Ò½º/doClock¸Þ¼Òµå/NightStateŬ·¡½ºÀÇ ¼Ò½º/ContextÀÎÅÍÆäÀ̽º/Ãß»ó¸Þ¼Òµåµé ¼±¾ð/SafeFrameŬ·¡½º ¼Ò½º/Çʵå¿Í ¸Þ¼Òµå »ìÆìº¸±â/SafeFrame»ý¼ºÀÚ º¸±â/Panel»ý¼º ÈÄ ¹öư ÀúÀå/actionPerformed¸Þ¼Òµå/¸®½º³Ê ¼³Á¤ ºÎºÐ È®ÀÎ/¹öưÀÌ Å¬¸¯µÇ¾úÀ» ¶§ È£ÃâµÇ´Â ¸Þ¼Òµå/stateÆÐÅÏÀ» »ç¿ëÇÏÁö ¾Ê°í ÇÁ·Î±×·¡¹ÖÀ» ÇßÀ» °æ¿ì/changeState¸Þ¼Òµå
  • 17.1½Ã°£ 1ºÐ µðÀÚÀÎ ÆÐÅϵé part11
    state ÆÐÅÏ
    StateÆÐÅÏÀÇ ¿¹Á¦/doUse¸Þ¼ÒµåÀÇ ´Ù¸¥Á¡/setClockÀ» ÅëÇØ State°¡ ¹Ù²î´Â °úÁ¤ È®ÀÎ/MainŬ·¡½º ¼Ò½º ÄÚµå/StateÆÐÅÏÀÇ Å¬·¡½º ´ÙÀ̾î±×·¥À» º¸¸ç °¢ Ŭ·¡½ºÀÇ ¿ªÇÒ È®ÀÎ/StateÀÇ ¿ªÇÒ/ConcreteStateÀÇ ¿ªÇÒ/ContextÀÇ ¿ªÇÒ/Divide and conquer/»óŰ¡ ¸¹Àº ½Ã½ºÅÛ¿¡¼­ StateÆÐÅÏÀÇ ÀåÁ¡ ¹ßÈÖ/StateÆÐÅÏÀº ½Ã½ºÅÛ »óŸ¦ Ŭ·¡½º·Î Ç¥Çö/SafeFrameŬ·¡½ºÀÇ setClock¸Þ¼Òµå¿Í StateÀÎÅÍÆäÀ̽ºÀÇ doClock¸Þ¼ÒµåÀÇ °ü°è/»óÅÂÀÇ ÀÇÁ¸ÇÑ Ã³¸® ÀÌÇØ/»óÅ ÀüȯÀÇ °ü¸®/SafeFrameŬ·¡½º°¡ changeState¸Þ¼Òµå ±¸Çö/»óÅ ÀüȯÀÇ ÀåÁ¡°ú ´ÜÁ¡/»óÅ ÀüȯÀº SafeFrameŬ·¡½º¿¡ ¸Ã±â±â/Context¿ªÇÒÀÌ ¸ðµç ConcreteStateÀÇ ¿ªÇÒÀ» ¾Ë¾Æ¾ß ÇÏ´Â ´ÜÁ¡/StateÆÐÅÏÀ» »ç¿ëÇϹǷΠ¾ò´Â ÀåÁ¡/stateÇʵåÀÇ °ªÀÌ ½Ã½ºÅÛÀÇ »óŸ¦ °áÁ¤/»õ·Î¿î »óÅ Ãß°¡/ƯÁ¤ ¸Þ¼Òµå Ãß°¡/Ŭ·¡½ºÀÇ ¼öÁ¤ÀÌ ¸¹Áö¸¸ ¿¡·¯¸¦ ÁÙ¿©ÁÖ´Â ¿ªÇÒ/ÀνºÅϽºÈ°¿ë ºÎºÐ ¼Ò½º ÄÚµå/this°¡ addActionListener¿Í doUse¿¡ Àü´ÞµÉ ¶§ÀÇ Â÷ÀÌ/StateÆÐÅÏÀÇ ´ÙÀ½ ¿¹Á¦/¼±Ç³±â¸¦ Ç¥ÇöÇÑ »óÅ ´ÙÀ̾î±×·¥/»óÅÂÀÇ ÇÑ Á¾·ù Pseudo state/»óÅ ¸Ó½Å ´ÙÀ̾î±×·¥ÀÇ ½ÃÀÛ°ú Á¾·á/»óÅÂÁøÀÔ/ƯÁ¤À̺¥Æ® ¹ß»ý ÈÄ Á¶°ÇÀ» ¸¸Á·ÇÒ °æ¿ì/ÁøÀÔ ÀÌÈÄ ¼öÇàÇØ¾ß ÇÏ´Â ¾×¼Ç/¼±Ç³±â°¡ OFF»óÅÂÀÏ °æ¿ì/»óÅ ¸Ó½Å ´ÙÀ̾î±×·¥ÀÇ ÇØ¼®/¼±Ç³±â°¡ ONÀ̳ª WORKING»óÅÂÀÏ °æ¿ì/Active¶ó´Â º¹ÇÕ»óÅ ÀÌ¿ë/º¹ÇÕ»óÅ ¾ÈÀÇ ON»óÅÂ/Çü±¤µî ¿¹Á¦/»óÅ ¸Ó½Å ´ÙÀ̾î±×·¥À¸·Î Ç¥Çö/»óÅ ¸Ó½Å ´ÙÀ̾î±×·¥À¸·Î ½ÇÁ¦ ÄÚµå ¸¸µé±â/º¯¼ö ¼³Á¤/LightŬ·¡½º ±¸Çö/ClientŬ·¡½º/»õ·Î¿î ¿ä±¸»çÇ×ÀÌ ÀÖÀ» ¶§ÀÇ ÄÚµå º¯°æ/»ó¼ö Ãß°¡/µÎ¹øÂ° LightŬ·¡½º/°¢ ¸Þ¼Òµå¿¡ SLEEPING»óÅ Ãß°¡/º¯ÇÏ´Â ºÎºÐÀ» ã¾Æ¼­ ĸ½¶È­/Çü±¤µîÀÇ »óÅ ¸Ó½Å ´ÙÀ̾î±×·¥/±¸Á¶°¡ StrategyÆÐÅϰú À¯»ç/ÄÚµùÇϱâ/StateÀÎÅÍÆäÀ̽º/ONŬ·¡½º/OFFŬ·¡½º/»óÅÂÁøÀÔµµ °¢ »óÅ¿¡¼­ ó¸®/LightŬ·¡½º¸¦ ¼öÁ¤ÇÑ ÄÚµå/stateÀÇ ¸Þ¼Òµå ÀÌ¿ë/°³¼±ÇÒ Á¡/SingletonÆÐÅÏÀ» »ç¿ëÇØ ON°ú OFFŬ·¡½º º¯°æ/State PatternÀÇ Äݶ󺸷¹ÀÌ¼Ç ´ÙÀ̾î±×·¥/StateÀÎÅÍÆäÀ̽ºÀÇ ¿ªÇÒ/°¢°¢ÀÇ StateÈ®ÀÎ/request¸Þ¼Òµå/StateÆÐÅÏÀ» Àû¿ëÇÑ LightŬ·¡½º/stateº¯¼öÀÇ º¯°æ/StateÆÐÅÏÀÇ »õ·Î¿î ¿¹Á¦/ÀÚÆÇ±â¿¡ µé¾î°¥ ¼ÒÇÁÆ®¿þ¾îÀÇ ³»¿ë/VendingMachineŬ·¡½º·Î ±¸Çö/insertCoin¸Þ¼Òµå/select¸Þ¼Òµå/SOLDOUTÃß°¡/°¢ ¸Þ¼ÒµåÀÇ ÄÚµå/»óÅ ÆÐÅÏÀ» Àû¿ëÇÑ À򮂱â ÇÁ·Î±×·¥ÀÇ Å¬·¡½º ´ÙÀ̾î±×·¥/»óÅÂÆÐÅÏÀÌ Àû¿ëµÈ VendingMachineÀÇ ¼Ò½º ÄÚµå/insertCoin°ú select¸Þ¼Òµå/NoCoinStateŬ·¡½º/increaseCoin¸Þ¼Òµå/select¸Þ¼Òµå/SelectableStateŬ·¡½º/»óÅÂÆÐÅÏ Àû¿ë Àü°ú ºñ±³/Context¿¡¼­ Á÷Á¢ »óÅ º¯°æÇÏ´Â ÄÚµå/»óŰ´Ã¼¿¡¼­ ContextÀÇ »óŸ¦ º¯°æÇÒ °æ¿ì/StateÆÐÅÏÀÇ Á¤¸®
  • 18.55ºÐ µðÀÚÀÎ ÆÐÅϵé part12
    Flyweight, Proxy
    FlyweightÆÐÅÏ/¹«°ÔÀÇ °³³äÀº ¸Þ¸ð¸®ÀÇ »ç¿ë·®/new Something¹®Àå/ÀÌ¹Ì ¸¸µé¾îÁ® ÀÖ´Â ÀνºÅϽº °øÀ¯/FlyweightÆÐÅÏÀ» »ç¿ëÇÑ ¿¹Á¦ Ŭ·¡½º ´ÙÀ̾î±×·¥/BigCharŬ·¡½º/BigCharFactoryŬ·¡½º/BigStringŬ·¡½º/BigCharŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/fontdata/º¹ÀâÇÑ »ý¼ºÀÚ/BigCharFactoryŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/°øÀ¯ÀÇ ¹æ¹ý ½ÇÇö/poolÇʵå´Â ÀνºÅϽº °ü¸®/put¸Þ¼Òµå/get¸Þ¼Òµå/singletonÆÐÅÏÀ» »ç¿ëÇØ¼­ ±¸Çö/getInstance¸Þ¼Òµå/getBigChar¸Þ¼Òµå/poolÀÌ¿ë/new¸¦ »ç¿ëÇØ¼­ BigCharÀÇ ÀνºÅϽº »ý¼º/synchronized/BigStringŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/for¹®À» µ¹¸ç factory.getBigChar¸Þ¼Òµå È£Ãâ/new¿¬»êÀÚ¸¦ ÀÌ¿ëÇϸé ÀνºÅϽº °øÀ¯ ºÒ°¡´É/bigcharsÀÇ ¹è¿­ º¸±â/MainŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/BigStringÀνºÅϽº¸¦ ¸¸µé°í Ç¥½ÃÇÏ´Â °Í ±¸Çö/FlyweightÆÐÅÏÀÇ °¢ ¿ªÇÒ/FlyweightÀÇ ¿ªÇÒ/FlyweightFactoryÀÇ ¿ªÇÒ/ClientÀÇ ¿ªÇÒ/FlyweightÆÐÅÏÀº ÀνºÅϽº¸¦ °øÀ¯/ÁÖÀÇÁ¡/BigString¿¡¼­ »ö Á¤º¸¸¦ Á¦°øÇÒ °æ¿ì/Intrinsic, extrinsic/ÀνºÅϽº¿Í garbage collection/ÀνºÅϽº¿¡ ´ëÇÑ ÂüÁ¶ Á¦°Å/¸Þ¸ð¸® ÀÌ¿ÜÀÇ ¸®¼Ò½º/ÀνºÅϽº¸¦ newÇÒ °æ¿ì/FlyweightÆÐÅÏ Á¤¸®/ProxyÆÐÅÏ/ProxyÆÐÅÏÀ» »ç¿ëÇÑ ¿¹Á¦/setPrinterName, getPrinterName¸Þ¼Òµå/print¸Þ¼Òµå¸¦ È£ÃâÇØ PrinterŬ·¡½ºÀÇ ÀνºÅϽº »ý¼º/PrintableÀνºÅϽº Á¤ÀÇ/PrinterŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/heavyJob¸Þ¼Òµå/PrintableÀÎÅÍÆäÀ̽º/PrinterProxyŬ·¡½º ¼Ò½º ÄÚµå/realize¸Þ¼Òµå/´ë¸®ÀÎÀÇ ÀνºÅϽº À̸§ ¼³Á¤/À§ÀÓ °úÁ¤/»ý¼ºµÇÁö¾Ê´Â PrinterÀÇ ÀνºÅϽº/synchronized¸Þ¼Òµå·Î ÇÏÁö ¾ÊÀº °æ¿ì/MainŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/PrinterŬ·¡½ºÀÇ »ý¼ºÀÚ/PrinterProxyŬ·¡½º¸¦ ¼öÁ¤ÇϱâÀ§ÇÑ ¹æ¹ý/realÇÊµå º¯°æ/Main¿¡ PrinterProxy»ý¼ººÎºÐ º¯°æ/ProxyÆÐÅÏÀÇ °¢ ¿ªÇÒ/SubjectÀÇ ¿ªÇÒ/ProxyÀÇ ¿ªÇÒ/RealSubjectÀÇ ¿ªÇÒ/ClientÀÇ ¿ªÇÒ/ºÐ¸®Çؼ­ °³º°ÀûÀ¸·Î ¼öÁ¤ °¡´É/À§ÀÓ/Åõ°úÀû/ProxyÆÐÅÏÀÇ Á¾·ù/Virtual Proxy(°¡»ó ÇÁ·Ï½Ã)/Remote Proxy(¿ø°Ý ÇÁ·Ï½Ã)/Access Proxy/ProxyÆÐÅÏÀÇ ¿¹Á¦/¿¹Á¦¸¦ ProxyÆÐÅÏÀ¸·Î ±¸ÇöÇÑ ProxyImageŬ·¡½º/draw¸Þ¼Òµå/ListUIŬ·¡½º/ProxyÆÐÅÏÀÇ Á¤¸®
  • 19.1½Ã°£ 52ºÐ µðÀÚÀÎ ÆÐÅϵé part13
    Command, Interpreter
    CommandÆÐÅÏ/¸í·É Ç¥Çö/CommandÆÐÅÏÀ» »ç¿ëÇÑ ±×¸²±×¸®±â ¿¹Á¦/Ŭ·¡½º ´ÙÀ̾î±×·¥ È®ÀÎ/Á¡À» ±×¸®´Â ¸í·É-DrawCommandŬ·¡½ºÀÇ ÀνºÅϽº·Î »ý¼º/3°¡Áö ÆÐŰÁö·Î ±¸¼º/CommandÀÎÅÍÆäÀ̽ºÀÇ ¼Ò½º ÄÚµå/execute¸Þ¼Òµå È£Ãâ/MacroCommandŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/commandsÇʵå/append¸Þ¼Òµå/undo¸Þ¼Òµå/clear¸Þ¼Òµå/DrawCommandŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/execute¸Þ¼Òµå/DrawableÀÎÅÍÆäÀ̽º/DrawCanvasŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/paint¸Þ¼Òµå/draw¸Þ¼Òµå/MainŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/historyÇʵå/canvasÇʵå/clearButtonÇʵå/»ý¼ºÀÚ¿¡¼­ Àüüȭ¸é ±¸¼º/À̺¥Æ®¸®½º³Ê ¼³Á¤/¹öưÀÇ ·¹À̾ƿô/actionPerformed¸Þ¼Òµå/mouseMoved¿Í mouseDragged¸Þ¼Òµå/À©µµ¿ì ¸®½º³Ê ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇϱâ À§ÇÑ ¸Þ¼Òµå/¹öư ¿¹Á¦/¿¹Á¦ Ŭ·¡½º ´ÙÀ̾î±×·¥À» ±â¹ÝÀ¸·Î ¼Ò½º ÄÚµå ÀÛ¼º/ButtonŬ·¡½º/¹öưÀ» ´­·¶À» ¶§ ´Ù¸¥ ±â´ÉÀ» ½ÇÇàÇÏ´Â °æ¿ì/¹öưÀ» ´©¸£´Â µ¿ÀÛ¿¡ µû¶ó ´Ù¸¥ ±â´É ½ÇÇà/ButtonŬ·¡½º¿¡ setMode¸Þ¼Òµå Ãß°¡/ClientŬ·¡½º È®ÀÎ/»õ·Î¿î ±â´ÉÀÇ Ãß°¡³ª º¯°æÀ» ÇÏ´õ¶óµµ ButtonŬ·¡½º¸¦ ±×´ë·Î »ç¿ëÇϱâ À§ÇÑ ¹æ¹ý/pressed¸Þ¼Òµå ¼öÁ¤/¿©·¯°¡Áö ±â´ÉÀ» ¼öÇàÇÏ´Â ¹öưŬ·¡½ºÀÇ ¼³°è ¿¹Á¦/¿¹Á¦¸¦ ±¸ÇöÇÑ ¼Ò½º ÄÚµå È®ÀÎ/ButtonŬ·¡½º/LampOnCommandŬ·¡½º/AlarmŬ·¡½º/ClientŬ·¡½º/µ¿ÀÏÇÑ pressed¸Þ¼Òµå È£Ãâ/CommandÆÐÅÏ Àû¿ë/ButtonŬ·¡½ºÀÇ pressed¸Þ¼Òµå/¹öưÀ» Çѹø ´­·¶À» ¶§ ·¥ÇÁ¸¦ ÄÑ°í µÎ¹ø ´­·¶À» ¶§ ·¥ÇÁ¸¦ ²ô´Â ±â´ÉÀÇ ±¸Çö/LampŬ·¡½º¿¡ turnOFF¸Þ¼Òµå Ãß°¡/LampOffCommandŬ·¡½º Ãß°¡/ClientŬ·¡½º/setCommand¸¦ ÅëÇØ lampOffCommand¼³Á¤/LampOffCommandŬ·¡½º »õ·Ó°Ô Á¤ÀÇ/ÆÄÀÏopen°ú ÆÄÀÏclose°¡ ÀÖ´Ù°í °¡Á¤/Command PatternÀ» »ç¿ëÇØ ¸Þ´º¾ÆÀÌÅÛ Àç»ç¿ë/CommandÆÐÅÏ¿¡¼­ °¢°¢ÀÇ ¿ªÇÒ/ConcreteCommandÀÇ ¿ªÇÒ/ReceiverÀÇ ¿ªÇÒ/ù¹øÂ° ¿¹Á¦ÀÇ CommandÆÐÅÏ Àû¿ëºÎºÐ È®ÀÎ/MainŬ·¡½º ¼Ò½º ÄÚµå/MainŬ·¡½º¿Í DrawCanvasŬ·¡½º°¡ execute¸Þ¼Òµå È£Ãâ/½ÃÄö½º ´ÙÀ̾î±×·¥ È®ÀÎ/±×¸²±×¸®±â¿¡ »öÀ» ¼³Á¤ÇÏ´Â ±â´É Ãß°¡Çϱâ/ColorCommandŬ·¡½º »ý¼º/DrawableÀÎÅÍÆäÀ̽º ¼öÁ¤/DrawCanvas¿¡ Àû¿ë/setColor¸Þ¼Òµå Ãß°¡/MainŬ·¡½º¿¡ 3°³ÀÇ ¹öư Ãß°¡ »ý¼º/¹öư ¹öư¹Ú½º¿¡ Ãß°¡/redButtonÀÌ ´­·ÈÀ» ¶§ÀÇ Command/blueButton°ú greenButtonµ¿ÀÏ ÀÛ¾÷/undo±â´É Ãß°¡/MainŬ·¡½º¿¡ undo¹öư Ãß°¡/CommandÆÐÅÏÀÇ Á¤¸®/InterpreterÆÐÅÏ/º¯È­°¡ »ý°åÀ» ¶§ ¾î´À ·¹º§ÀÇ ÇÁ·Î±×·¥À» ¼öÁ¤ÇÒ °ÍÀÎÁö È®ÀÎ/¹Ì´Ï ¾ð¾î ¼³¸í/¹Ì´Ï ¾ð¾î·Î ±â¼úµÈ ¹Ì´Ï ÇÁ·Î±×·¥ÀÇ ¿¹/¹Ì´Ï ¾ð¾îÀÇ ¹®¹ý/¹Ì´Ï ¾ð¾î¸¦ ±¸ºÐÇØ¼®ÇÏ´Â ¿¹Á¦/¿¹Á¦ ÇÁ·Î±×·¥ÀÇ Å¬·¡½º ´ÙÀ̾î±×·¥/NodeŬ·¡½ºÀÇ ¼Ò½º ÄÚµå/ProgramNodeŬ·¡½º/Token-±¸¹®Çؼ®ÀÇ Ã³¸® ´ÜÀ§/CommandListNodeŬ·¡½º/CommandNodeŬ·¡½º/RepeatCommandNodeŬ·¡½º/parse¸Þ¼Òµå/PrimitiveCommandNodeŬ·¡½º/ContextŬ·¡½º/nextToken¸Þ¼Òµå È£Ãâ/MainŬ·¡½º/parse¸¦ ³¡³»°í nodeÃâ·Â/InterpreterÆÐÅÏÀÇ °¢ ¿ªÇÒ/TerminalExpressionÀÇ ¿ªÇÒ/NonTerminalExpressionÀÇ ¿ªÇÒ/ContextÀÇ ¿ªÇÒ/ClientÀÇ ¿ªÇÒ/¹Ì´Ï ¾ð¾îÀÇ ´Ù¸¥ Á¾·ù/Interpreter¸¦ ¸¸µé ¶§ÀÇ ¿À·ù/ÇÁ·Î±×·¥À» ¼öÁ¤Çؼ­ ½ÇÇà/InterpreterFacadeŬ·¡½º/parse¸Þ¼Òµå/ExecutorFactoryÀÎÅÍÆäÀ̽º/ContextŬ·¡½º¿¡¼­ ExecutorFactory±¸Çö/NodeŬ·¡½º¿¡¼­ Executor±¸Çö/ProgramNodeŬ·¡½º/CommandNodeŬ·¡½º/RepeatCommandNodeŬ·¡½º/CommandListNodeŬ·¡½º/PrimitiveCommandNodeŬ·¡½º/TurtleCanvasŬ·¡½º/TurtleExecutorŬ·¡½º/initializeÈ£Ãâ/MainŬ·¡½º/actionPerformed¸Þ¼Òµå/parseAndExecute¸Þ¼Òµå/InterpreterÆÐÅÏ Á¤¸®/IteratorÆÐÅÏ/Iterator¿Í VisitorÆÐÅÏÀ» °°ÀÌ »ç¿ëÇÒ °æ¿ì/CompositeÆÐÅÏ/Factory Method/AdapterÆÐÅÏ/Template Method/Factory MethodÀÇ ¿¬°ü ÆÐÅÏ/SingletonÆÐÅÏ/PrototypeÀÇ ¿¬°ü ÆÐÅÏ/BuilderÀÇ ¿¬°ü ÆÐÅÏ/Abstract Factory/Bridge/StrategyÆÐÅÏ/Chain of Responsibility/Mediator
  • 20.1½Ã°£ 27ºÐ UML ´ÙÀ̾î±×·¥
    ´ÙÀ̾î±×·¥ Á¾·ù, À¯½ºÄÉÀ̽º, ÄÄÆ÷³ÍÆ®, º¹ÇÕ±¸Á¶, Ȱµ¿, »óÅÂ, ½ÃÄö½º, Åë½Å, ŸÀ̹Ö, »óÈ£ÀÛ¿ë °³¿ä, ¹èÄ¡
    UML¾Ë¾Æº¸±â/UMLÀÇ ´ÙÀ̾î±×·¥ÀÇ Á¾·ù¿Í Ư¼º/¿©·¯°¡Áö ´ÙÀ̾î±×·¥À» Ŭ·¡½º ´ÙÀ̾î±×·¥À¸·Î ±¸¼º/UML2.0À» ±¸¼ºÇÏ´Â ´ÙÀ̾î±×·¥/±¸Á¶ ´ÙÀ̾î±×·¥/Class´ÙÀ̾î±×·¥/Object´ÙÀ̾î±×·¥/Deployment´ÙÀ̾î±×·¥/Package´ÙÀ̾î±×·¥/Component´ÙÀ̾î±×·¥/Composite structure´ÙÀ̾î±×·¥/ÇàÀ§ ´ÙÀ̾î±×·¥/Use case´ÙÀ̾î±×·¥/State machine´ÙÀ̾î±×·¥/Activity´ÙÀ̾î±×·¥/Interaction´ÙÀ̾î±×·¥/Sequence¿Í Communication´ÙÀ̾î±×·¥/Interaction overview´ÙÀ̾î±×·¥/Timing´ÙÀ̾î±×·¥/¿ä±¸»çÇ× Á¤ÀÇ ´Ü°è¿¡¼­ »ç¿ëµÇ´Â ´ÙÀ̾î±×·¥/ºÐ¼® ´Ü°è¿¡¼­ »ç¿ëµÇ´Â ´ÙÀ̾î±×·¥/¼³°è ´Ü°è¿¡¼­ »ç¿ëµÇ´Â ´ÙÀ̾î±×·¥/±¸Çö°ú Å×½ºÆ® ´Ü°è¿¡¼­ »ç¿ëµÇ´Â ´ÙÀ̾î±×·¥/Package´ÙÀ̾î±×·¥Àº ¿ä±¸»çÇ× Á¤ÀÇ, ºÐ¼®, ¼³°è ´Ü°è¿¡¼­ »ç¿ë/À¯½ºÄÉÀ̽º ´ÙÀ̾î±×·¥ÀÇ ¿¹Á¦/½Ã½ºÅÛ°ú »óÈ£ÀÛ¿ëÇÏ´Â ´ë»óÀ» ¾×ÅÍ·Î Á¤ÀÇ/À¯½ºÄÉÀ̽º·Î Æ÷ÇÔµÇÁö ¾ÊÀº °ÍÀº ¿ä±¸»çÇ׿¡¼­ Á¦¿Ü/Timer¾×ÅÍÀÇ ¿ªÇÒ/È®ÀåµÈ À¯½ºÄÉÀ̽º ´ÙÀ̾î±×·¥ È®ÀÎ/¾×ÅÍÀÇ ÀϹÝÈ­/Use caseÀÇ ÀϹÝÈ­/Use caseÀÇ Æ÷ÇÔ/Use caseÀÇ È®Àå/¾×ÅͰ£ÀÇ ¿¬°ü°ü°è/Ŭ·¡½º ´ÙÀ̾î±×·¥/µµ¼­´ëÃ⠽ýºÅÛÀ» ±¸¼ºÇϰí Àִ Ŭ·¡½º/´Éµ¿(actiive)Ŭ·¡½º/boundary/control/entity/¼Ó¼º°ú ¿¬»êÀÌ ¸í½ÃµÈ Ŭ·¡½º ´ÙÀ̾î±×·¥/¼³°è´Ü°èÀÇ Å¬·¡½º ´ÙÀ̾î±×·¥ Ȱ¿ë¹æ¹ý/ÆÄƮŬ·¡½ºÀÇ Ç¥Çö/°´Ã¼ ´ÙÀ̾î±×·¥/°´Ã¼ÀÇ Ç¥Çö¹æ¹ý È®ÀÎ/4°³ÀÇ °´Ã¼´Â ±³Åë¼ö´Ü Ŭ·¡½º·Î instantiationÀÇÁ¸°ü°è/ÆÐŰÁö ´ÙÀ̾î±×·¥/packageElement/Ŭ·¡½º¸¦ ÆÐŰÁö·Î Á¶Á÷È­ÇÑ ¿¹Á¦/ÄÄÆ÷³ÍÆ® ´ÙÀ̾î±×·¥/¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØÃĸ¦ Ç¥ÇöÇÒ ¶§ »ç¿ë/ÀÎÅÍÆäÀ̽º/ÀÎÅÍÆäÀ̽º¸¦ ±¸¼ºÇÏ´Â ¿¬»ê¿¡ÀÇÇØ Á¤ÀÇ/º¹ÇÕ±¸Á¶ ´ÙÀ̾î±×·¥/ÆÄÆ®, Æ÷Æ®, ¿¬°áÀÚÀÇ °³³äÀ» ÀÌ¿ë/Æ÷Æ®-ÆÄÆ®°£ÀÇ Åë½ÅÀ» À§ÇÑ ¿¬°áÁöÁ¡/¿¬°áÀÚ/Ȱµ¿ ´ÙÀ̾î±×·¥/Ȱµ¿³ëµå/°´Ã¼³ëµå/Á¦¾î³ëµå/ÆÇ´Ü³ëµå/º´ÇÕ³ëµå/Æ÷Å©³ëµå/Á¶Àγëµå/Á¦¾îÈ帧/°´Ã¼È帧/¿¹¿Ü󸮰¡ Ãß°¡µÈ Ȱµ¿ ´ÙÀ̾î±×·¥/orderCancelRequest/Ȱµ¿ ´ÙÀ̾î±×·¥À» ÆÄƼ¼Ç°ú ±¸È¹¸éÀ» ÀÌ¿ëÇÏ¿© ³ªÅ¸³½ ±×¸²/ÆÄƼ¼Ç/Invoice/»óÅ ´ÙÀ̾î±×·¥/ÈÞ´ëÆùÀÇ Á¾·á¹öưÀ» ´­·¶À» °æ¿ìÀÇ ¿¹Á¦/»óÅÂ/½ÃÀÛ»óÅÂ/Á¾·á»óÅÂ/ÀüÀÌ-°´Ã¼ÀÇ »óŰ¡ ´Ù¸¥ »óÅ·Πº¯°æ/À̺¥Æ®/¾×¼Ç/º¹ÀâÇÑ »óÅ ´ÙÀ̾î±×·¥ÀÇ ¿¹Á¦/»óÅ ³»ºÎ È®ÀÎ/º¹ÇÕ »óÅÂ(Operating)/»óÅ ³»ºÎÀÇ do/¾×¼Ç/»óŸ¦ ¹þ¾î³¯ ¶§¸¶´Ù ¼öÇàµÇ´Â Exit/¾×¼Ç/º¹ÇÕ »óÅ ³»ºÎ/Á÷±³º¹ÇÕ »óÅÂ/MotorÀÇ »óÅÂ¿Í ArrivalSensorÀÇ »óÅÂ/È÷½ºÅ丮 »óÅÂ/½ÃÄö½º ´ÙÀ̾î±×·¥/»ý¸í¼±/¸Þ½ÃÁö/¸Þ½ÃÁöÀÇ Àü´Þ ¼ø¼­/µ¿±âÀû ¸Þ½ÃÁö/ºñµ¿±âÀû ¸Þ½ÃÁö/º¹ÀâÇÑ ½ÃÄö½º ´ÙÀ̾î±×·¥ ¿¹Á¦/»óÈ£ÀÛ¿ë À̸§/¹ß°ßµÈ ¸Þ½ÃÁö/º¹ÇÕÀû ºÎºÐ/Åë½Å ´ÙÀ̾î±×·¥/¸Þ½ÃÁö Àü´Þ ¼ø¼­´Â ¸Þ½ÃÁö ¾Õ¿¡ ¼ø¹øÀ» ¸í½Ã/ŸÀÌ¹Ö ´ÙÀ̾î±×·¥/»ý¸í¼± °¡·Î¹æÇâÀ¸·Î Ç¥½Ã/»óÈ£ÀÛ¿ë °³¿ä ´ÙÀ̾î±×·¥/Ȱµ¿ ´ÙÀ̾î±×·¥ÀÇ ÀÏÁ¾/¹èÄ¡ ´ÙÀ̾î±×·¥/³ëµå/Åë½Å °æ·Î/¼öÇà ȯ°æ

°­ÀǸñ·Ï ´Ù¿î·Îµå                        1:1 °­ÀÇ Áú¹®&´äº¯