µð¹ö±× µ¿ÀÛ

 

µð¹ö±ëÀ» À§ÇØ ÀϹÝÀûÀ¸·Î »ç¿ëµÇ´Â µ¿ÀÛÀº Run ¸Þ´º Ç׸ñ ¾Æ·¡¿¡¼­ ±×·ì µË´Ï´Ù:



´ëºÎºÐÀÇ ÀÌ µ¿ÀÛÀº ¶ÇÇÑ  Debug windowÀÇ ¿ÞÂÊ Åø¹Ù¿¡¼­ ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

Debug  

µð¹ö±ë( optionally Debug ´ÙÀ̾ó·Î±×¸¦ ¿±´Ï´Ù)¸¦ ½ÃÀÛÇϰí, ÀÌ ¸Þ´º¿¡¼­ ¸ðµç µð¹ö±× ¿É¼ÇÀ» »ç¿ë °¡´ÉÇÏ°Ô ÇÕ´Ï´Ù.

Reload Changed  Classes  

¸®·Îµå´Â µð¹ö±ë µ¿¾È Ŭ·¡½º¸¦ º¯°æÇß½À´Ï´Ù.  ¸¸ÀÏ ´ç½ÅÀÇ Äڵ忡¼­ ¾Æ¹« °Íµµ ¹Ù²îÁö ¾Ê´Â´Ù¸é, ºÒ°¡´ÉÇÕ´Ï´Ù.

»ó¼¼ÇÑ °ÍÀº  HotSwap  ¼­ºê ¼½¼ÇÀ» º¸½Ê½Ã¿À.

Step Over  

ÇöÀç ¸Þ¼ÒµåÀÇ ´ÙÀ½ ¶óÀÎÀ¸·ÎÀÇ ½ºÅÜÇÕ´Ï´Ù.  ¸¸ÀÏ ÇöÀç ¶óÀÎÀÌ ¸Þ¼Òµå¿¡¼­ ÃÖÁ¾ Çϳª¶ó¸é, ÀÌ ¸Þ¼Òµå ÈÄ¿¡ ¹Ù·Î ½ÇÇàÇß´ø ¶óÀÎÀ¸·Î ½ºÅÜ ÇϽʽÿÀ.


´ç½ÅÀº ´ÙÀ½À» ÇØ¼­ ½ºÅ×ÇÎ ¼Óµµ¸¦ °³¼±ÇÒ ¼ö ÀÖ½À´Ï´Ù:

1.  Alternate collections view ¸¦ ²ô½Ê½Ã¿À.

Debug º¸±âÀÇ Frame ÅÇ¿¡¼­ ¿À¸¥ÂÊ ¹öưÀ» Ŭ¸¯Çϰí, Customize View... ¸¦ ¼±ÅÃÇÏ°í »óÀÀÇϴ üũ ¹Ú½º¸¦ ÇØÁ¦ÇÕ´Ï´Ù.

 

2.  'ToString' ¸ðµå¸¦ ²ü´Ï´Ù.
File SettingsIDE Settings | Debugger   ÆÐ³Î¿¡¼­ ±×¸®°í IDE ¼öÁØÀ» À§ÇÑ ÀÌ ¸ðµå¸¦ ºÒ°¡´ÉÇÏ°Ô ÇÏ´Â Types to be shown as 'ToString()' ¼±Åà ±×·ì¿¡¼­ None ¿É¼Ç ¹öưÀ» ¼±ÅÃÇÕ´Ï´Ù.

 OR
¿ÀºêÁ§Æ® ³ëµå»óÀÇ Debug º¸±âÀÇ Frame ¶Ç´Â Watch ÅÇ¿¡¼­ ¿À¸¥ÂÊ ¹öưÀ» Ŭ¸¯Çϰí Types to be shown as 'ToString()' ¼±Åà ±×·ì¿¡¼­ None ¿É¼Ç ¹öưÀ» ƯÈ÷ ¼±ÅÃÇÏ´Â °¢ ³ëµå¿¡ ´ëÇÑ ÀÌ ¸ðµå¸¦ ºÒ°¡´ÉÇÏ°Ô ÇÕ´Ï´Ù. 


¸¸ÀÏ ½ºÅ×ÇÎÇÏ´Â µ¿¾È ÀϺΠǥÇö½Ä °è»êÀÌ ¿Ï·áµÇÁö ¾ÊÀ¸¸é ±×·± °è»ê ÇÁ·Î¼¼½º´Â ÀÌ»ó Á¾·áµÉ °ÍÀ̰í Ç¥Çö½ÄÀº °è»êµÇÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù.


Step Into  

ÇöÀçÀÇ ½ÇÇà Æ÷ÀÎÆ®¿¡¼­ ºÒ·ÁÁø ¸Þ¼Òµå·Î ½ºÅÜÇÕ´Ï´Ù (¸¸ÀÏ ÀÌ ¸Þ¼Òµå°¡ ½ºÅµµÈ

±×°Íµé ÁßÀÇ Çϳª¶ó¸é µð¹ö°Å´Â Step over µ¿ÀÛÀ» ¼öÇàÇÏ´Â °Í °°ÀÌ µ¿ÀÛÇÒ °ÍÀÔ´Ï´Ù. )

Force Step  Into  

ºñ·Ï ÀÌ ¸Þ¼Òµå°¡ ½ºÅµ µÇ¾ú´Ù ÇØµµ ÇöÀçÀÇ ½ÇÇà Æ÷ÀÎÆ®¿¡¼­ ºÒ·ÁÁø ¸Þ¼Òµå·Î ½ºÅÜÇÕ´Ï´Ù.

Step Out  

±× ÈÄ¿¡ ½ÇÇà ¶óÀÎÀ¸·Î ÇöÀçÀÇ ¸Þ¼Òµå¸¦ ½ºÅÜ ¾Æ¿ô ÇÕ´Ï´Ù.

 

Run To Cursor  

ij·µÀÌ ¿¡µðÅÍ¿¡¼­ ÇöÀç ¹èÄ¡µÈ ¶óÀο¡¼­ ÇÁ·Î±×·¥ ½ÇÇà°ú ÁßÁö¸¦ Àç°³ÇÕ´Ï´Ù.  ÀÏ´Ü ´ç½ÅÀÇ ÇÁ·Î±×·¥ ½ÇÇàÀÌ ÁßÁöµÇ¸é, ½ÇÁ¦·Î Á¦°ÅµÈ ÇöÀç ij·µ ¶óÀο¡ ´ëÇÑ Àӽà ºê·¹ÀÌÅ© Æ÷ÀÎÆ® ¼¼Æ®°¡ ÀÖ½À´Ï´Ù. µû¶ó¼­ ÀÌ¹Ì ½ÇÇàµÇ¾ú´ø ¶óÀο¡ ij·µÀÌ ¹èÄ¡µÇ¸é, ½ÇÇàÀ» À§ÇØ ÇÁ·Î±×·¥Àº ¶ÇÇÑ Àç°³ µÉ °ÍÀ̰í ÀÌÀü ºê·¹ÀÌÅ© Æ÷ÀÎÆ®·Î ·Ñ¹éÇÏ´Â ¹æ¹ýÀÌ ¾ø½À´Ï´Ù.

´ç½ÅÀÌ ¸Þ¼Òµå ½ÃÄö½º¿¡ ±í°Ô ½ºÅÜÇϰí Çѹø¿¡ ¿©·¯ ¸Þ¼Òµå ¹ÛÀ¸·Î ½ºÅÜ ¾Æ¿ô ÇÒ ¶§, ÀÌ µ¿ÀÛÀº Ưº°È÷ À¯¿ëÇÕ´Ï´Ù.


¸¸ÀÏ ´ç½ÅÀ» ÁöÁ¤ÇÑ ¶óÀÎÀ¸·Î µ¥¸®°í °¡±âÀü¿¡ ½ÇÇàµÇ¾î¾ß¸¸ ÇÏ´Â ¶óÀο¡ ´ëÇÑ ºê·¹ÀÌÅ© Æ÷ÀÎÆ® ¼¼Æ®°¡ ÀÖ´Ù¸é, µð¹ö°Å´Â óÀ½ ºê·¹ÀÌÅ© Æ÷ÀÎÆ®°¡ ¸¸³µ´ø °÷¿¡¼­ ÁßÁöÇÒ °Í ÀÔ´Ï´Ù.


ÇÁ·Î±×·¥ ½ÇÇàÀÌ Á¤±âÀûÀ¸·Î ÁߴܵǾ´Â ¾ÈµÇ´Â µ¿¾È ´ç½ÅÀÌ Æ¯Á¤ÀÇ ¶óÀο¡ ÀϽÃÀûÀÎ ÀÏÁ¾ÀÇ ºê·¹ÀÌÅ© Æ÷ÀÎÆ®¸¦ ÇÊ¿äÇÒ ¶§ ÀÌ µ¿ÀÛÀ» »ç¿ëÇϽʽÿÀ.


Pop Frame  

¸Þ¼Òµå ½ÇÇàÀ» Áß´ÜÇÏ°í ½ºÅÃÀ¸·ÎºÎÅÍ ÇöÀç ¸Þ¼Òµå ÇÁ·¹ÀÓÀ» µå·ÓÇÏ´Â ½ÇÇà Æ÷ÀÎÆ®¸¦ ¸Þ¼Òµå ÄÝ µÚ·Î À̵¿ÇϽʽÿÀ. ¿¹¸¦ µé¸é, Debug Åø À©µµ¿ìÀÇ ¿­¸° Threads  ÅÇ¿¡¼­ ´ç½ÅÀº ÇÊ¿äÇÑ ¸Þ¼Òµå¸¦ ãÀ» ¼ö ÀÖ°í Pop Frame À» ¹ß°ßÇÒ ¼ö ÀÖ½À´Ï´Ù.  ±×°ÍÀº ¸Þ¼Òµå¿Í ¸Þ¼Òµå ±× ÀÚü À§¿¡¼­ ¸ðµç ÇÁ·¹ÀÓÀ» ¶³¾î¶ß¸± °ÍÀÔ´Ï´Ù.

Pause Program/  

Resume Program  

ÀÌ ¸Þ´º Ç׸ñÀ» »ç¿ëÇϸé, ´ç½ÅÀº ´ç½ÅÀÌ ÇÊ¿äÇÑ ¾î¶² ½Ã°£¿¡¶óµµ µð¹ö±×µÇ´Â ´ç½ÅÀÇ ÇÁ·Î±×·¥À» ÁßÁöÇϰí, Àç°³ÇÒ ¼ö ÀÖ½À´Ï´Ù.  À̰͵éÀº ±×°Íµé Áß Çϳª°¡ »ç¿ëµÇ´Â ¶§¿¡ µ¿±âÈ­ µÇ´Â ¸Þ´º Ç׸ñµéÀÔ´Ï´Ù, ´Ù¸¥ °ÍÀÌ »ç¿ë°¡´É ÇÏ°Ô µÉ ¶§ ±×°ÍÀº ºÒ°¡´ÉÇÏ°Ô µË´Ï´Ù.

 

Stop Program  

ÇÁ·Î±×·¥ ½ÇÇàÀ» Á¤ÁöÇÕ´Ï´Ù.

Evaluate Expression...  

´ç½ÅÀÌ ÇöÀç ¾î¶² °ª¿¡ °ü½ÉÀÖ¾î Çϴ°¡ ¶ó´Â Ç¥Çö½ÄÀÇ ºü¸¥ Æò°¡¸¦ À§ÇÑ  Expression Evaluation ´ÙÀ̾ó·Î±×¸¦ ¿±´Ï´Ù

Quick Evaluate Expression  

¼±ÅÃµÈ º¯¼öÀÇ °ª ¶Ç´Â ij·µÀÌ À§Ä¡ÇÏ´Â ÂüÁ¶¸¦ Ç¥½ÃÇϰí ÀÖ´Â ÅøÆÁÀ» ¿±´Ï´Ù.  ±×°ÍÀº ¿øÇÏ´Â º¯¼ö À§¿¡ ¸¶¿ì½º Æ÷ÀÎÅ͸¦ Àâ´Â °Í°ú À¯»çÇÕ´Ï´Ù.

Show Execution Point  

¿¡µðÅÍÀÇ ÇöÀçÀÇ ½ÇÇà Á¡À» °­Á¶Çϰí,  Frame  ÅÇ¿¡¼­ »óÀÀÇÏ´Â ½ºÅà ±¸Á¶¸¦ Ç¥½ÃÇÕ´Ï´Ù.

Toggle Line/Method/Field Breakpoint  

ÇöÀçÀÇ ¹®¸Æ¿¡ ºÎÇÕÇϰí ÀÖ´Â ºê·¹ÀÌÅ© Æ÷ÀÎÆ®¸¦ ´õÇϰųª/Á¦°ÅÇÕ´Ï´Ù.  ¹®¸Æ¿¡ ÀÇÁ¸ÇÏ´Â °ÍÀ» »ç¿ë °¡´ÉÇÏ°Ô Çϰųª, ºÒ°¡´ÉÇÏ°Ô ÇÕ´Ï´Ù.


ȨÅë ¿µ¿ª¿¡ Àִ Ŭ¸¯ÇÏ¸é ¶óÀÎ ºê·¹ÀÌÅ© Æ÷ÀÎÆ®¸¦ Ãß°¡ÇÕ´Ï´Ù.  ±×¸®°í ¸¸ÀÏ °¡´ÉÇÏ´Ù¸é Alt(Alt + Click)À» ȦµùÇϸé ÇöÀç ¹®¸Æ¿¡ »óÀÀÇÏ´Â ¶óÀÎ/¸Þ¼Òµå/ÇÊµå ºê·¹ÀÌÅ© Æ÷ÀÎÆ®¸¦ Ãß°¡ ÇÏ´Â µ¿¾È ȨÅë ¿µ¿ª¿¡¼­ Ŭ¸¯ÇÕ´Ï´Ù.


Toggle Breakpoint Enabled  

ÇöÀç ¼±ÅÃµÈ ºê·¹ÀÌÅ© Æ÷ÀÎÆ®(±× »óÅ¿¡ ÀÇÁ¸ÇÏ´Â °Í)À» »ç¿ë °¡´ÉÇÏ°Ô Çϰųª, ºÒ°¡´ÉÇÏ°Ô ÇÕ´Ï´Ù. ºê·¹ÀÌÅ© Æ÷ÀÎÆ® À§¸¦ Alt + Click Çϰųª ºê·¹ÀÌÅ© Æ÷ÀÎÆ®¸¦ ¿À¸¥ÂÊ ¹öưÀ» Ŭ¸¯ÇÑ ÈÄ¿¡ ³ªÅ¸³ª´Â ¹®¸Æ ¸Þ´º¿¡¼­ Enable/Disable¸¦ ¼±ÅÃÇÕ´Ï´Ù.

 

View Breakpoints  

ºê·¹ÀÌÅ© Æ÷ÀÎÆ®¸¦ °ü¸®Çϱâ À§ÇØ  Breakpoints ´ÙÀ̾ó·Î±×¸¦ ¿±´Ï´Ù.

Export Threads...  

ÇöÀçÀÇ ½º·¹µåÀÇ »óŸ¦ ÀúÀåÇÏ´Â °ÍÀ» Çã¿ëÇÕ´Ï´Ù.  ´ç½ÅÀº Ÿ°Ù ÆÄÀÏÀ» ÁöÁ¤Çϰųª Ŭ¸³º¸µå·Î Á¤º¸¸¦ Ä«ÇÇÇÒ ¼ö ÀÖ´Â °÷¿¡¼­ Export Threads  ´ÙÀ̾ó·Î±×¸¦ ¿©½Ê½Ã¿À. ÀúÀåÇϱâ Àü¿¡, ´ç½ÅÀº ¶ÇÇÑ ÀúÀåµÇ´Â Á¤º¸¸¦ ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù.

Suspend all  threads while stepping  

¹öưÀº Debug Window ¿¡ Á¸ÀçÇÕ´Ï´Ù.

 ½ºÅ×ÇÎ ÇÏ´Â µ¿¾È ¸¸ÀÏ ±×°ÍÀÌ off (µðÆúÆ®) µÇ¸é ¿À·ÎÁö ´ç½ÅÀÌ ½ºÅ×ÇÎ-ÀÎ ÇÏ´Â ¾²·¹µå¸¸ÀÌ ÁßÁöµÉ °Í ÀÔ´Ï´Ù.
  
¸¸ÀÏ ±×°ÍÀÌ on À̶ó¸é : 

1.  ¶óÀÎ ºê·¹ÀÌÅ© Æ÷ÀÎÆ®°¡ µµÂøµÉ ¶§, ¸ðµç ½ÇÇà ½º·¹µå´Â ÁßÁöµË´Ï´Ù.

2.  ½ºÅ×ÇÎÀÏ ¶§, ´Ü°è°¡ ¿Ï·áµÇ°í ³­ ÈÄ¿¡ ¸ðµç ½º·¹µå´Â ÁßÁöµÉ °ÍÀÔ´Ï´Ù.

 

 

Ç¥Çö½Ä ´ÙÀ̾ó·Î±×ÀÇ Æò°¡


Expression Evaluation  ´ÙÀ̾ó·Î±×´Â µÎ °³ÀÇ ¸ðµå¸¦ °¡Áý´Ï´Ù.  Expression Mode  ¸ðµå´Â ´ç½ÅÀÌ Expression ÄÞº¸ ¹Ú½º¿¡¼­ ½Ì±Û ¶óÀÎÀÇ Ç¥Çö½ÄÀ» Æò°¡ÇÏ´Â °ÍÀ» °¡´ÉÇÏ°Ô ÇÕ´Ï´Ù.



Code Fragment Mode ´Â Code fragment ÅØ½ºÆ® Çʵ忡¼­ ±×µéÀ» »ý¼ºÇϴ ªÀº ÄÚµå ÀϺθ¦ Æò°¡ÇÏ´Â °ÍÀ» °¡´ÉÇÏ°Ô ÇÕ´Ï´Ù. Áö¿øµÈ ±¸¼ºÃ¼´Â ¼±¾ð, ÇÒ´ç, ·çÇÁ(for, while, do...while) ±×¸®°í if/else ÀÔ´Ï´Ù.


ºñ·Ï ¾ÖÇø®ÄÉÀÌ¼Ç ¸Þ¼Òµå°¡ ºÒ·ÁÁö°í ¸ðµç µð¹ö°Å ±â´ÉÀÌ °¡´ÉÇÏ°Ô À¯ÁöµÈ´Ù ÇÏ´õ¶óµµDebugger ´Â Áö±Ý IDEAÀÇ UI¸¦ Àá±×Áö ¾Ê½À´Ï´Ù.


Ç¥Çö½ÄÀ» ÀÔ·ÂÇϸ鼭 ´ç½ÅÀº  Code Completion  , Error Highlighting  , Surround with...  , Quick JavaDoc  , External JavaDoc °ú °°Àº Æí¸®ÇÑ ÆíÁý Ư¼ºÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.


Ç¥Çö½ÄÀÌ ±â´ëµÈ(¿¹¸¦ µé¸é ¶óÀÎ ºê·¹ÀÌÅ© Æ÷ÀÎÆ®¸¦ À§ÇÑ »óÅÂ) ¸ðµç µð¹ö°Å ÅØ½ºÆ® Çʵ忡¼­ ÀÌ ÆíÁý Ư¡Àº ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.



Æò°¡ °á°ú¸¦ ¾ò±â À§Çؼ­, Evaluate ¹öưÀ» ´©¸£°Å³ª Expression  / Code Fragment ¸ðµå¿¡¼­ Enter  / Ctrl + Enter Å°¸¦ ´©¸¨´Ï´Ù.

ÀÌ ´ÙÀ̾ó·Î±×´Â ´ç½ÅÀÌ IDEA·ÎºÎÅÍ ³ª¿À±â Àü±îÁö ¸ðµç ÃÖ±ÙÀÇ Æò°¡µÈ Ç¥Çö½ÄÀ» ÀúÀåÇÕ´Ï´Ù.
Ç¥Çö½ÄÀº Ç×»ó Debug âÀÇ Frame  ÅÇ¿¡¼­ ÇöÀç ¼±ÅÃµÈ ½ºÅà ±¸Á¶ÀÇ ¹®¸Æ¿¡¼­ Æò°¡µË´Ï´Ù.  ¸¸ÀÏ Ç¥Çö½ÄÀÌ Æò°¡µÉ ¼ö ¾øÀ¸¸é, °¡´ÉÇÑ ÀÌÀ¯´Â Result À©µµ¿ì¿¡¼­ °£·«È÷ ±â¼úµÉ °ÍÀÔ´Ï´Ù.


´ç½ÅÀÌ ±ÔÄ¢ÀûÀ¸·Î Æò°¡µÈ Ç¥Çö½ÄÀÇ ÀϺθ¦ ÇÊ¿äÇÏÁö ¾ÊÀ» ¶§ ÀÌ ±â´É¸¦ »ç¿ëÇϽʽÿÀ.


ÀÌ ±â´É¿¡ ´ëÇÑ ´ëü´Â ´ç½ÅÀÌ "Àå±âÀûÀÎ ±â¾ï ÀåÄ¡"¸¦ À§ÇØ °¡Àå ÀÚÁÖ »ç¿ëµÇ´Â Ç¥Çö½ÄÀ» Ãß°¡ÇÒ ¼ö ÀÖ´Â µð¹ö±× âÀÇ Watches ÅÇÀÔ´Ï´Ù.



Expression Evaluation  Ư¡À» »ç¿ëÇϸ鼭, ´ç½ÅÀº ¶ÇÇÑ ´ÙÀ½À» ¾Ë°í ÀÖ¾î¾ß¸¸ ÇÕ´Ï´Ù:

1.  µð¹ö°Å°¡ ºê·¹ÀÌÅ© Æ÷ÀÎÆ®¿¡ ¸ØÃß°í ±× ½ÇÇàÀÌ ÁßÁöµÇÁö ¾Ê¾ÒÀ» ¶§¿¡¸¸ ¸Þ¼Òµå´Â Expression Evaluation  ´ÙÀ̾ó·Î±× ³»¿¡¼­ È£ÃâµÉ ¼ö ÀÖ½À´Ï´Ù.

2.  ¸¸ÀÏ Expression Evaluation ³»¿¡¼­ È£ÃâµÈ ¸Þ¼Òµå°¡ ±× º¸µðÀÇ ³»ºÎ¿¡¼­ ºê·¹ÀÌÅ© Æ÷ÀÎÆ®¸¦ °¡Áö¸é, µð¹ö°Å´Â ±×°Í¿¡¼­ ¸ØÃä´Ï´Ù.

3.  ±×·¯³ª, Expression Evaluation ´Â ¿À·ÎÁö "ÇϳªÀÇ ·¹º§"ÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù.  ¹Ù²Ù¾î ¸»Çϸé, ¸¸ÀÏ Expression Evaluation·ÎºÎÅÍ ºÒ·ÁÁö´Â ¸Þ¼Òµå ³»ÀÇ ºê·¹ÀÌÅ© Æ÷ÀÎÆ®¿¡¼­ IDEA Á¤ÁöÇÏ¸é ´ç½ÅÀº Expression Evaluation Æ¯Â¡À» ´Ù½Ã´Â »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.