|
|
|
 |
ÆÇ¸Å°¡ |
38,000¿ø ¡æ 34,200¿ø 10% |
|
 |
¸¶Àϸ®Áö |
2% 680¿ø |
|
 |
¹ßÇàÀÏ |
2009-10-12
|
 |
ISBN |
8960771007 | 9788960771000
|
 |
±âŸÁ¤º¸ |
¹ø¿ª¼ | 608ÂÊ
|
|
 |
¿¹»óÃâ°íÀÏ
|
1~2ÀÏ À̳» (±Ù¹«ÀϱâÁØ) |
 |
¹è¼Ûºñ |
¹«·á¹è¼Û
|
| |
|
|
|
|
|
 |
| ÇÁ·Î±×·¡¹Ö¾ð¾î
|
|
|
| Á¾ÇÕÁö¼ö 1p 982 À§ |
|
| ¿ù°£Áö¼ö 3p 111 À§ |
|
|
| |
|
¡Ø ³×À̹ö üũ¾Æ¿ôÀ¸·Î ±¸¸Å½Ã ºñȸ¿øÀ¸·Î ±¸¸Å°¡
µÊÀ¸·Î °ÄÄ ¸¶Àϸ®Áö´Â Àû¸³ µÇÁö ¾Ê½À´Ï´Ù. |
|
|
|
|
|
 |
1ºÎ ±×·¡ÇȽº¿Í GUI ±âÃÊ
1Àå µ¥½ºÅ©Å¾ ÀÚ¹Ù ±×·¡ÇȽº API: ½ºÀ®, AWT, ÀÚ¹Ù 2D Ãß»ó À©µµ¿ì ŸŶ ÀÚ¹Ù 2D ½ºÀ®
2Àå ½ºÀ® ·»´õ¸µ ±âÃÊ À̺¥Æ® ½ºÀ® ÆäÀÎÆ® ºñµ¿±â½Ä ¸®ÆäÀÎÆ® ¿äû µ¿±â½Ä ÆäÀÎÆ® ¿äû ½ºÀ® ·»´õ¸µ paint() setOpaque() ÀÌÁß ¹öÆÛ¸µ ½º·¹µå ´Ù·ç±â ½º·¹µå ¸ðµ¨ ŸÀÌ¸Ó¿Í À̺¥Æ® ÇØ¼® ½º·¹µå SwingWorker¸¦ »ç¿ëÇÑ °£ÆíÇÑ ½º·¹µå »ç¿ë ½º·¹µå °ü·Ã ³»¿ë ¿ä¾à
3Àå ±×·¡ÇȽº ±âÃÊ ÀÚ¹Ù 2D ·»´õ¸µ ±×·¡ÇȽº °´Ã¼ ¾ò±â ±×·¡ÇȽº »óÅ À̹ÌÁö È®´ëÃà¼Ò °ü·Ã ÈùÆ® µµÇü ¾ÈƼ¾Ù¸®¾î½º ÈùÆ® ÅØ½ºÆ® ¾ÈƼ¾Ù¸®¾î½º ÈùÆ® ±×·¡ÇÈ ±âº»¿ä¼Ò
4Àå À̹ÌÁö À̹ÌÁö ŸÀÔ BufferedImage À̹ÌÁö È®´ëÃà¼Ò ǰÁú°ú ¼º´É getFasterScaledInstance(): ´õ ºü¸£°í ÁÁÀº ǰÁúÀÇ È®´ëÃà¼Ò À̹ÌÁö¸¦ Á¦°øÇÏ´Â À¯Æ¿¸®Æ¼
5Àå ¼º´É Ŭ¸³ »ç¿ë ȣȯ À̹ÌÁö °ÆÁ¤ÇØ¾ß ÇÒ °Íµé °ü¸®µÇ´Â À̹ÌÁö¶õ? À̹ÌÁö ȣȯ½Ã۱⠰ü¸®µÇ´Â À̹ÌÁö DataBuffer °´Ã¼ Á¢±Ù À̹ÌÁö ³»ÀÇ ÀæÀº ·»´õ¸µ Áß°£»ý¼º À̹ÌÁö ±âº» °³³ä µ¿ÀÛ ¿ø¸® À¯ÀÇ»çÇ× ¿ä¾à ±âº» ·»´õ¸µ ÃÖÀûÈ ¼º´É ÃøÁ¤ ¸í·ÉÇà Ç÷¡±× ·»´õ¸µ ¼º´É µð¹ö±ë
2ºÎ °í±Þ ±×·¡ÇÈ ·»´õ¸µ
6Àå ÄÄÆ÷ÁöÆ® ¾ËÆÄ ÄÄÆ÷ÁöÆ® ¾ËÆÄ ÄÄÆ÷ÁöÆ®ÀÇ 12 ±ÔÄ¢ Clear Dst DstAtop DstIn DstOut DstOver Src SrcAtop SrcIn SrcOut SrcOver Xor AlphaComposite »ý¼º°ú ¼³Á¤ AlphaCompositeÀÇ ÀϹÝÀûÀÎ »ç¿ë¹ý Clear »ç¿ëÇϱâ SrcOver »ç¿ëÇϱâ SrcIn »ç¿ëÇϱâ AlphaComposite »ç¿ë½Ã ÁÖÀÇ»çÇ× ÀڽŸ¸ÀÇ ÄÄÆ÷ÁöÆ® ÀÛ¼º Add ÄÄÆ÷ÁöÆ® CompositeContext ±¸Çö Çȼ¿ ÇÕ¼º ¿ä¾à
7Àå ±×·¡µð¾ðÆ® ÀÌÁß ¼±Çü ±×·¡µð¾ðÆ® Á¤±Ô ±×·¡µð¾ðÆ®¸¦ Ȱ¿ëÇÑ Æ¯¼ö È¿°ú ´Ù´Ü ¼±Çü ±×·¡µð¾ðÆ® ¹æ»çÇü ±×·¡µð¾ðÆ® ±×·¡µð¾ðÆ® ÃÖÀûÈ ±×·¡µð¾ðÆ® ij½ÃÇϱ⠴õ ¶È¶ÈÇÏ°Ô Ä³½ÃÇϱ⠹ݺ¹µÇ´Â ±×·¡µð¾ðÆ® ÃÖÀûÈÇϱâ
8Àå À̹ÌÁö ÇÁ·Î¼¼½Ì À̹ÌÁö ÇÊÅÍ BufferedImageOp·Î À̹ÌÁö ó¸®Çϱâ AffineTransformOp ColorConvertOp ConvolveOp Ä¿³Î ±¸¼ºÇϱ⠰æ°è¿¡ ´ëÇÑ ÀÛ¾÷ LookupOp RescaleOp »ç¿ëÀÚ Á¤ÀÇ BufferedImageOp ±â¹Ý ÇÊÅÍ Å¬·¡½º »öÁ¶ º¯°æ ÇÊÅÍ ÇÊÅÍ ¼º´É¿¡ ´ëÇÑ À̾߱⠿ä¾à
9Àå ±Û¶ó½º ÆäÀÎ ±Û¶ó½º ÆäÀο¡ ±×¸®±â ÃÖÀûÈµÈ ±Û¶ó½º ÆäÀÎ ÆäÀÎÆÃ ÀÔ·Â À̺¥Æ® °¡·Îä±â ¸¶¿ì½º À̺¥Æ® °ü·Ã ÁÖÀÇ»çÇ×
10Àå ·¹À̾îµå ÆäÀÎ ·¹À̾îµå ÆäÀÎ ·¹ÀÌ¾î »ç¿ëÇϱ⠴ÜÀÏ ·¹ÀÌ¾î ³»¿¡¼ ÄÄÆ÷³ÍÆ® Á¤·Ä ·¹À̾îµå ÆäÀΰú ·¹À̾ƿô ¿©·¯ ·¹À̾ƿôÀ» »ç¿ëÇØ¼ JLayeredPane ´ëüÇϱâ
11Àå ¸®ÆäÀÎÆ® ¸Å´ÏÀú ½ºÀ®ÀÌ ³Ê¹« ¶È¶ÈÇÒ ¶§ RepaintManager¿Í ù ´ë¸é RepaintManager °ü¸®Çϱâ RepaintManager·Î ±¸ÇöÇÑ ¹Ý»ç»ó ¹Ý»ç»óÀ» À§ÇÑ °ø°£ ¸¸µé±â ¹Ý»ç»ó ±×¸®±â ´õ ¹Ùº¸°°Àº, ±×·¡¼ ´õ ¶È¶ÈÇÑ RepaintManager ¿ä¾à
3ºÎ ¾Ö´Ï¸ÞÀ̼Ç
12Àå ¾Ö´Ï¸ÞÀÌ¼Ç ±âÃÊ ½Ã°£¿¡ ´ëÇØ¼ ±âÃÊ °³³ä ÇÁ·¹ÀÓ ±â¹Ý ¾Ö´Ï¸ÞÀÌ¼Ç ÇÁ·¹ÀÓ ºñÀ² ½Ã°£ ±â¹Ý ¸ð¼Ç ŸÀ̹Ö(±×¸®°í Ç÷§Æû ŸÀÌ¹Ö À¯Æ¿¸®Æ¼) ¡°Áö±Ý ¸î½ÃÁÒ?¡± ¡°¸ð´×ÄÝÀ» ºÎÅ¹ÇØ¿ä.¡± ¡°´Ù½Ã ºÒ·¯Áà¿ä. ¶Ç´Ù½Ã. ¶Ç´Ù½Ã.¡± ÇØ»óµµ System.currentTimeMillis()¿Í System.nanoTime()ÀÇ ÇØ»óµµ ½½¸³ ÇØ»óµµ ŸÀÌ¸Ó ÇØ»óµµ ÇØ»óµµ¿¡ ´ëÇÑ ÇØ»óµµ ½ºÀ® ¾ÖÇø®ÄÉÀÌ¼Ç ¿òÁ÷ÀÌ°Ô Çϱ⠿òÁ÷ÀÌ´Â ±×·¡ÇÈ ¿òÁ÷ÀÌ´Â GUI ¿ä¾à
13Àå ¸Å²ô·¯¿î ¿òÁ÷ÀÓ ¹è°æ: ¿Ö ¾Ö´Ï¸ÞÀ̼ÇÀÌ ¾î»öÇÏ°Ô º¸Àϱî? ¾Ö´Ï¸ÞÀ̼ÇÀÌ ¹ö¹÷°Å¸®´Â ¿øÀΰú ºÎµå·´°Ô ¸¸µå´Â ¹ý ŸÀ̹ÖÀÌ ¸ðµç °ÍÀÌ´Ù »ö»ó: Â÷À̰¡ ¹«¾ùÀϱî? ¼öÁ÷ ȸ±â: µ¿±âÈµÈ °¨°¢ SmoothMoves: µ¥¸ð ±×·¡ÇȽº °´Ã¼ »ý¼º ŸÀÌ¸Ó ½ÇÇà ·»´õ¸µ ·»´õ¸µ ¿É¼Ç ¿ä¾à
14Àå ŸÀÌ¹Ö ÇÁ·¹ÀÓ¿öÅ©: ±âÃÊ ¼Ò°³ ÇÙ½É °³³ä Animator Ŭ·¡½º Äݹé Áö¼Ó½Ã°£ ¹Ýº¹ ÇØ»óµµ ½ÃÀÛ µ¿ÀÛ º¸°£ °¡¼Ó°ú °¨¼Ó º¸°£ÀÚ ¿ä¾à
15Àå ŸÀÌ¹Ö ÇÁ·¹ÀÓ¿öÅ©: °í±Þ ±â´É Æ®¸®°Å °³³ä°ú »ç¿ë¹ý Æ®¸®°Å »óÀ§Å¬·¡½º ³»Àå Æ®¸®°Å ÇÁ·ÎÆÛƼ ¼³Á¤ÀÚ PropertySetter Ŭ·¡½º Evaluator ŰÇÁ·¹ÀÓ ¿ä¾à
4ºÎ ÀÌÆåÆ®
16Àå Á¤Àû ÀÌÆåÆ® ºí·¯ »ç¿ë¸ñÀû °£´ÜÇÑ ºí·¯ °¡¿ì½Ã¾È ºí·¯ ¼º´ÉÇâ»ó ±â¹ý ¹Ý»ç »ç¿ë¸ñÀû ¹Ý»ç ±×¸®±â ºí·¯ Àû¿ë ¹Ý»ç µå·Ó ¼¨µµ¿ì »ç¿ë ¸ñÀû °£´ÜÇÑ µå·Ó ¼¨µµ¿ì »ç½ÇÀûÀÎ µå·Ó ¼¨µµ¿ì °Á¶ »ç¿ë¸ñÀû ¸íµµ ³ôÀ̱⠽ºÆÌ¶óÀÌÆ® °¡µ¶¼º °³¼±À» À§ÇÑ ÅØ½ºÆ® °Á¶ »þÇ »ç¿ë¸ñÀû ´Ü¼ø »þÇ ¾ð»þÇÁ ¸¶½ºÅ© Ãà¼ÒµÈ À̹ÌÁö¿¡ »þÇ Àû¿ë ¿ä¾à
17Àå µ¿Àû ÀÌÆåÆ® ¿òÁ÷ÀÓ »ç¿ë¸ñÀû °©´Ï´Ù, °©´Ï´Ù, ³Ñ¾î°¬½À´Ï´Ù! ÆäÀÌµå »ç¿ë¸ñÀû ÆäÀ̵å Àü·« AlphaComposite ÆäÀÌµå »ö»ó ÆäÀ̵å Å©·Î½ºÆäÀÌµå ÆäÀÌµå ½±°Ô ÇÏ±â ÆÞ½º »ç¿ë¸ñÀû ÆÞ½º ´À³¢±â ÀÚµ¿ ¹é¿ ¾àµ¿ÇÏ´Â ÆÞ½º ½ºÇÁ¸µ »ç¿ë¸ñÀû ½ºÇÁ¸µ ´ëȰ¾à ¸ðÇÎ »ç¿ë¸ñÀû ¹öư ¸ðÇÎÇϱ⠿ä¾à
18Àå ¾Ö´Ï¸ÞÀÌ¼Ç Àå¸éÀüȯ ¾ÖÇø®ÄÉÀÌ¼Ç »óŸ¦ ²÷±è¾øÀÌ ÀüȯÇϱ⠱⺻ °³³ä ¾Ö´Ï¸ÞÀÌ¼Ç Àå¸éÀüȯ: ¶óÀ̺귯¸® ¾Ö´Ï¸ÞÀÌ¼Ç ¾ÖÇø®ÄÉÀÌ¼Ç »óÅ GUI »óÅ API ÀÌÆåÆ® GUI ±¸Á¶ ±×¸²°ú À̹ÌÁöȦ´õ ScreenTransition ¾Ö´Ï¸ÞÀÌÆ® Àå¸éÀüȯ: ½ºÀ®¿¡°Ô ´ëü ¾î¶² ÀÏÀ» ½Ã۰í ÀÖÀ»±î? ¸ô·¡ ´ÙÀ½ ȸé äºñÇϱ⠷¹À̾ƿôÀ» ÆîÃĺ¸ÀÚ: ·¹À̾ƿôÀ» ¼¼È÷ º¯È½ÃŰ±â ½ºÀ®À» ÃãÃß°Ô ÇÏÀÚ: ¼º´É ¿ä¾à
19Àå ¸ÚÁø ¸®Ä¡ Ŭ¶óÀ̾ðÆ®ÀÇ Åº»ý ¿¡¾î¸®½º ¿¡¾î¸®½ºÀÇ ½ÇÇà Á÷Á¢ ÇØº¸±â ÀÛ¾÷È帧µµ ÆäÀÌÆÛ µðÀÚÀÎ ºñÀü È¸é ±¸¼º µðÀÚÀÎ ¸ñ¾÷ ¸ñ¾÷¿¡¼ ÄÚµå±îÁö ·¹ÀÌ¾î »ç¿ëÇÏ±â ºí·»µù ¸ðµå ¾È³»¼± »ç¿ë ³ ¿¹¼ú°¡°¡ ¾Æ´Ï¶ó±¸! ¾Ë¸ÂÀº »ö»ó ¼±Åà µðÀÚÀÎ ¼Àû Àб⠿ä¾à ÇÁ·ÎÁ§Æ®
¸ÎÀ½¸» ÀÚ¹Ù »çÀÌÆ® ÀúÀÚÀÇ »çÀÌÆ® (´ç½ÅÀÇ À̸§ÀÌ µé¾î°¥ ÀÚ¸®)
|
 |
|
 |
àÇϽº (Chet Haase) ½ã¸¶ÀÌÅ©·Î½Ã½ºÅÛÁî ÀÚ¹Ù SE ±×·ìÀÇ Å¬¶óÀÌ¾ðÆ® ¾ÆÅ°ÅØÆ®´Ù. ½ºÀ®°ú ÀÚ¹Ù 2D¸¦ ºñ·ÔÇÑ ¸ðµç µ¥½ºÅ©Å¾ ÀÚ¹Ù ±â¼úÀ» ´Ù·ç¸ç Ç÷§Æû ¹ßÀü¿¡ ±â¿©Çϰí ÀÖ´Ù. ¼ÒÇÁÆ®¿þ¾î ºÐ¾ß Áß ±×·¡ÇÈ¿¡ ¿ÀǸ¦ °®°í ÀÖÀ¸¸ç (´ëÇÐ Á¹¾÷ ÈÄ ³×Æ®¿öÅ© ºÐ¼®¿¡ Àá±ñ ¸ö´ã¾ÒÁö¸¸ ³Ê¹«³ª Áö·çÇØ ±×¸¸µÐ °Í ¿Ü¿¡) ¾ÖÇø®ÄÉÀÌ¼Ç ¼öÁØ¿¡¼ µå¶óÀ̹ö ¼öÁØ¿¡ À̸£±â±îÁö 2D, 3D µî ¸ðµç Á¾·ùÀÇ ±×·¡ÇÈ ±â¼úÀ» °³¹ßÇÏ¸ç ´ëºÎºÐ °æ·ÂÀ» ½×¾Ò´Ù. ÃÂÀº Įư Ä®¸®Áö¿¡¼ ¼öÇÐ ÇÐ»ç °úÁ¤À» ¼ö·áÇÏ°í ¿À¸®°Ç ´ëÇб³¿¡¼ ÄÄÇ»ÅÍ Á¤º¸ÇÐ ¼®»ç °úÁ¤À» ¼ö·áÇß´Ù.
·Î¸ÞÀÎ °¡ÀÌ (Romain Guy) ¸¶Áö¸· Çб⠵¿¾È ÀÌ Ã¥À» ¾²´À¶ó 2007³â °¡À»¿¡¾ß ÄÄÇ»ÅÍ °øÇÐ ¼®»ç ÇÐÀ§¸¦ ¹ÞÀ» ¼ö ÀÖ¾ú´Ù. ÁÖ¿ä °ü½É»ç´Â ±×·¡ÇȽº¿Í GUI °³¹ßÀÌ¸ç ¼ö³â°£ÀÇ ÀÚ¹Ù¿Í ½ºÀ® °³¹ß °æ·ÂÀÌ ÀÖ´Ù. ·Î¸ÞÀÎÀº ÇöÀç¿¡ ¾ÈÁÖÇÏÁö ¾Ê°í ÇÁ·Î±×·¡¹Ö ÀâÁöÀÇ ÇÁ¸®·£½º Àú³Î¸®½ºÆ®, ¿À¶óÀϸ® ¹ø¿ªÀÚ, ÇÁ¶û½º ¼ÒÀç ´ëÇÐÀÇ ÀÚ¹Ù °»ç, ºñµð¿À°ÔÀÓ °³¹ßÀÚ, ÇÁ¸®·£½º °³¹ßÀÚ, ½ã ¸¶ÀÌÅ©·Î½Ã½ºÅÛÁî ½ºÀ® ÆÀÀÇ ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î, ±¸±ÛÀÇ ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î µî ¼ö¸¹Àº ÀÏÀ» Çϰí ÀÖ´Ù. ±×ÀÇ »õ·Î¿î °ü½É»ç´Â µðÁöÅÐ »çÁøÀÌ´Ù.
[¿ªÀÚ¼Ò°³] ¾ç¼®È£ KAIST Àü»ê°ú¸¦ Á¹¾÷Çϰí À¥, ¸ð¹ÙÀÏ, ÀÓº£µðµå, ÀÚ¹Ù GUI ¾ÖÇø®ÄÉÀÌ¼Ç µî ´Ù¾çÇÑ ÇÁ·ÎÁ§Æ®¸¦ ¼öÇàÇßÀ¸¸ç ÇöÀç´Â ³×À̹ö ÀçÆÒ¿¡¼ ÀϺ» °Ë»ö¼ºñ½º °³¹ß¿¡ Âü¿©Çϰí ÀÖ´Ù. ¿¡ÀÌÄÜ ÀÌŬ¸³½º ÇÁ·ÎÆä¼Å³Î ½Ã¸®Áî ¿¡µðÅ͸¦ ¸Ã¾Æ ¡ºÀÌŬ¸³½º RCP¡», ¡º½ÇÀü ÀÌŬ¸³½º Ç÷¯±×ÀÎ °³¹ß¡»À» ¹ø¿ªÇÏ´Â µî ¾çÁúÀÇ ÀÌŬ¸³½º °ü·Ã¼¸¦ µ¶Àڵ鿡°Ô ¼Ò°³ÇÏ´Â µ¥ Å« º¸¶÷À» ´À³¤´Ù. ¶ÇÇÑ 2005³âºÎÅÍ ³×À̹ö ÀÌŬ¸³½º Ç÷¯±×ÀÎ ±îÆä(http://cafe.naver.com/eclipseplugin)¸¦ ¿î¿µÇϸç Á¡Á¡ ´Ã¾î°¡´Â ÀÌŬ¸³½º Ç÷¯±×ÀÎ °³¹ßÀÚµé°ú ÇÔ²² ÀÌŬ¸³½º ±â¼ú ÀüÆÄ¿¡ ³ë·ÂÇϰí ÀÖ´Ù. |
 |
|
|
|
|
|
|
|
|
|
|
|