ÄÚµå °Ë»ç

 

Code Inspection Àº ´ç½ÅÀÇ Java Äڵ带 À¯ÁöÇϰí, ±ú²ýÇÏ°Ô Çϵµ·Ï µµ¿Í ÁÖ±â À§ÇØ µðÀÚÀÎµÈ µµ±¸ÀÔ´Ï´Ù, ¹ö±× ¶Ç´Â ºÒÀÏÄ¡¸¦ À§ÇØ Å½»öÇÏ¿© À̰ÍÀ» ´Þ¼ºÇϰí, ±× ´ÙÀ½ ¹ß°ßµÈ ¾î¶² ¹®Á¦¿¡ ´ëÇÑ ¼Ö·ç¼ÇÀ» Á¦¾ÈÇÕ´Ï´Ù.

ÄÚµå °Ë»ç °³½Ã

 
´ç½ÅÀº ¿À¸¥ÂÊ ¹öưÀ» Ŭ¸¯ÇÏ´Â °Í¿¡ ÀÇÇØ ¼±ÅÃµÈ ÆÄÀÏ, ÆÐŰÁö, ¶Ç´Â ÇÁ·ÎÁ§Æ®¸¦ ¿À¸¥ÂÊ Å¬¸¯ÇÏ¿© ºÒ·ÁÁö´Â ¹®¸Æ ¸Þ´º¿¡¼­ Inspect Code...¸¦ ´©¸£´Â °Í¿¡ ÀÇÇØ Project View  ¶Ç´Â Commander  µÑ Áß Çϳª·ÎºÎÅÍ Code Inspection¸¦ ½ÃÀÛ ÇÒ ¼ö ÀÖ½À´Ï´Ù.

OR
Editor ¿¡µðÅÍ¿¡ ÃÊÁ¡ÀÌ ÀÖÀ» ¶§ ´ç½ÅÀº Tools ¸Þ´º¿¡¼­ Inspect Code... Å¬¸¯ÇÒ ¼ö ÀÖ½À´Ï´Ù.



´ç½ÅÀÌ °Ë»çÇϱ⸦ ¹Ù¶ó´Â °ÍÀ» À§ÇØ ´ç½Å¿¡°Ô ÇÁ·ÒÇÁÆ® µÇ´Â Choose Inspection Scope   ´ÙÀ̾ó·Î±×¸¦ º¼ °Í ÀÔ´Ï´Ù ÇöÀç ¿­¸° ÆÄÀÏ, ÇöÀç ÆÐŰÁö ¶Ç´Â Àüü ÇÁ·ÎÁ§Æ®.


±×·¯³ª Code Inspection ÀÌ ¸ðµç ¸Þ¼Òµå ÄÝÀ» º¼ ¼ö ÀÖ°í, ÀϹÝÀûÀ¸·Î ´õ ¸¹Àº ºÒÀÏÄ¡¸¦ ¹ß°ßÇÒ ¼ö Àֱ⠶§¹®¿¡ ÀüüÀÇ ÇÁ·ÎÁ§Æ®¸¦ °Ë»çÇÏ´Â °ÍÀÌ  ´õ ÁÁ½À´Ï´Ù.  ±×·¯³ª, °Ë»çÇÏ´Â µ¥ ½Ã°£ÀÌ °É¸±Áöµµ ¸ð¸£´Â Å« ÇÁ·ÎÁ§Æ®¸¦ ´ç½ÅÀÌ °¡Áö°í ÀÖ´Â °æ¿ì¿¡, ÁöÁ¤ÇÑ ÆÄÀÏ ¶Ç´Â ÆÐŰÁö¸¦ °Ë»çÇÏ´Â ¿É¼ÇÀº À¯¿ëÇϱ⵵ ÇÕ´Ï´Ù.


Code Inspection ´Â ¶ÇÇÑ IDEAÀÇ ¼³Ä¡ÀÇ bin µð·ºÅ͸®¿¡ À§Ä¡ÇÏ´Â inspect.exe(À©µµ¿ë) ¶Ç´Â inspect.sh (Unix¿ë) ½ºÅ©¸³Æ® ÆÄÀÏÀ» »ç¿ëÇϰí ÀÖ´Â ¸í·É¾î Çà ¸ðµå·Î ½ÃÀÛµÉ ¼ö ÀÖ½À´Ï´Ù.

½ºÅ©¸³Æ®´Â ´ÙÀ½ÀÇ ¸Å°³ º¯¼ö¸¦ °¡Áý´Ï´Ù:  <project_file_path> <inspection_profile_file_path> <output_path> [<options>].


°¡¿ë ¿É¼Ç:

 -d <directory_path °Ë»çµÈ µð·ºÅ͸®.  ÀüüÀÇ ÇÁ·ÎÁ§Æ®´Â µðÆúÆ®·Î °Ë»çµË´Ï´Ù.
 
-v[0|1|2] – verbose level. 0 - silent, 1 - verbose, 2 - most verbose.


¿¹¸¦ µé¸éinspect.exe c:\project\project.ipr c:\idea\config\inspection\offline_profile.xml c:\project\result.xml -v2

inspection_profile_file_path ´Â ¸í·É¾î Çà ÄÚµå °Ë»ç¿¡ ´ëÇÑ ¿É¼ÇÀ» ¼³Á¤Çϱâ À§ÇØ »ç¿ëµÇ´Â ÆÄÀÏ(offline_profile.xml ·Î¼­ ÀÌ ¿¹¿¡¼­ ºÒ·ÁÁø)¿¡¼­ °æ·ÎÀÔ´Ï´Ù.  ÀÌ ÆÄÀÏÀº Tools Inspect Code...  ¸¦ ¼±ÅÃÇÏ´Â °Í¿¡ ÀÇÇØ »ý¼ºµÉ ¼ö ÀÖ½À´Ï´Ù. ÇÊ¿äÇÑ ¿É¼ÇÀ» ±¸¼ºÇÏ°í ´ÙÀ̾ó·Î±×ÀÇ ÃÖ »ó´Ü¿¡¼­ Save As... ¸¦ Ŭ¸¯ÇϽʽÿÀ. ÆÄÀÏÀº config/inspection ¼­ºêÆú´õ¿¡¼­ ÀúÀåµÉ °ÍÀÔ´Ï´Ù.  config Æú´õ´Â IDEA »ç¿ëÀÚ ¼³Á¤ µð·ºÅ͸®(µðÆúÆ®·Î »ç¿ëÀÚ È¨ µð·ºÅ͸®¿¡ À§Ä¡ÇÏ´Â)ÀÔ´Ï´Ù.

°Ë»ç ´ÙÀ̾ó·Î±×


Inspect Code...  ¸¦ ´©¸£°í ³­ ÈÄ¿¡ ´ç½ÅÀº Inspection Dialog in <project_name OR directory_name OR file_name> (ŸÀÌÆ²Àº ´ç½ÅÀÌ °Ë»çÇϰíÀÚ ÇÏ´Â ÇÁ·ÎÁ§Æ® ¹üÀ§¸¦ Ç¥½ÃÇÕ´Ï´Ù)¸¦ º¼ °ÍÀÔ´Ï´Ù.



´ÙÀ̾ó·Î±× À©µµ¿ì´Â 4 ¼½¼ÇÀ» °¡Áý´Ï´Ù:

 The profile ¼½¼ÇÀº ÀúÀåµÈ ¿øÇÏ´Â ¼³Á¤°ú ÇÔ²² (create/remove/store) ÇÁ·ÎÆÄÀÏÀ» °ü¸®Çϱâ À§ÇØ µðÀÚÀε˴ϴÙ.  »õ·Î¿î ÇÁ·ÎÆÄÀÏ »ý¼ºÇϱâ À§Çؼ­ Save as...  ¸¦ ´©¸£°í Save as... ´ÙÀ̾ó·Î±×¿¡¼­ ¿øÇÏ´Â À̸§À» ŸÀÌÇÁ ÇϽʽÿÀ. ÇÁ·ÎÆÄÀÏÀ» Á¦°ÅÇϱâ À§ÇØ, µå·Ó-´Ù¿î ¹Ú½º¿¡¼­ ±×°ÍÀ» ¼±ÅÃÇϰí Remove ¸¦ ´©¸¨´Ï´Ù.

 
Æ®¸®¿Í °°Àº º¸±â´Â °¡¿ëÇÑ °Ë»ç¸¦ Ç¥½ÃÇÕ´Ï´Ù.  Ã¼Å© ¹Ú½º´Â ´ç½Å¿¡°Ô ¾î´À °Ë»ç°¡ Code Inspection  ÇÁ·Î¼¼½ºÀÇ ÇöÀçÀÇ ½ÇÇà µ¿¾È »ç¿ëµÉ °ÍÀΰ¡ ÁöÁ¤ÇÏ´Â °ÍÀ» Çã¶ôÇÕ´Ï´Ù.  Æ®¸® ³ëµå »ó¿¡¼­ üũ ¹Ú½º¸¦ »ç¿ëÇÏ¸é ´ç½ÅÀÌ °³º°ÀûÀÎ °Ë»çº¸´Ù ¿ÀÈ÷·Á Àüü °Ë»ç ±×·ìÀ» ¼±ÅÃ/¼±ÅÃÇØÁ¦¸¦ ÇÕ ¼ö ÀÖ½À´Ï´Ù.


IDEA¿Í ÇÔ²² ¼±ÀûµÈ Á¦ 3ÀÚÀÇ InspectionGadget Ç÷¯±× ÀÎ ¿¡ ÀÇÇØ Ãß°¡µÈ280 ÀÌ»óÀÇ °Ë»ç°¡ ¶ÇÇÑ º¸¿©Áý´Ï´Ù.


 ¼±ÅÃµÈ °Ë»ç¸¦ À§ÇØ °£´ÜÇÑ Á¤ÀǸ¦ Ç¥½ÃÇϰí ÀÖ´Â Description  À©µµ¿ì.

 
¼±ÅÃµÈ °Ë»ç¿¡ ÀÌ¿ë °¡´ÉÇÑ ¿É¼ÇÀ» Ç¥½ÃÇϰí ÀÖ´Â Options À©µµ¿ì.  ÁöÁ¤ÇÑ °Ë»ç¸¦ À§ÇÑ ¿É¼ÇÀº »óÀÀÇÏ´Â ¼½¼Ç¿¡¼­ ±â¼úµË´Ï´Ù.

 

°Ë»ç Åø À©µµ¿ì


Code Inspection °á°ú´Â Inspection Tool Window ¿¡¼­ Á¦°øµË´Ï´Ù.



°¢ °Ë»ç °á°ú´Â »óÀÀÇÏ´Â °Ë»ç ÈÄ¿¡ ¸í¸íµÈ ÁöÁ¤µÈ ÅÇ À§¿¡¼­ ³ªÅ¸³³´Ï´Ù.

ÀϹÝÀûÀ¸·Î, Inspection Tool Window ´Â °á°ú¸¦ Ç¥½ÃÇÏ´Â µÎ °³ÀÇ À©µµ¿ì¸¦ °¡Áý´Ï´Ù:  ¹®Á¦°¡ ÀǽɵǾú´ø Ç׸ñ(Ŭ·¡½º, ÇÊµå µî)À» Ç¥½ÃÇϰí ÀÖ´Â ¿ÞÂÊÀÇ Æ®¸®¿Í °°Àº º¸±â¿Í Ưº°ÇÑ Ç׸ñ¿¡ °üÇØ Ç¥½ÃÇϰí ÀÖ´Â ¿À¸¥ÂÊÀÇ ºê¶ó¿ìÀú. ºê¶ó¿ìÀú À©µµ¿ì´Â ¹®Á¦°¡ ¹ß°ßµÇ¾ú´ø Ç׸ñÀ» ¸í¸íÇÏ°í ±×°ÍÀ» ±â¼úÇÏ°í ±× À§Ä¡¸¦ Ç¥½ÃÇÕ´Ï´Ù (Çʵå Name, Location, Problem synopsis ´Â ¸ðµç °Ë»ç¿¡ ´ëÇØ Á¸ÀçÇÕ´Ï´Ù).  ¶ÇÇÑ ÁöÁ¤ÇÑ °Ë»ç¸¦ À§ÇÑ ¼½¼Ç¿¡¼­ ±â¼úµÉ ºÎ°¡ÀÇ Çʵå¿Í Á¤º¸°¡ µÉ ¼ö ÀÖ½À´Ï´Ù.  Location Çʵ忡¼­ ¸µÅ©¸¦ Ŭ¸¯ÇÏ¸é ¹®Á¦°¡ ¹ß°ßµÇ¾ú´ø Ŭ·¡½ºÀÇ ¼±¾ðÀ¸·Î ´ç½ÅÀº ³×ºñ°ÔÀÌÆ®ÇÕ´Ï´Ù.  Problem synopsis ¿¡ ¸µÅ©°¡ ÀÖ´Â µ¿¾È ¼½¼ÇÀº  ¿¡µðÅÍ¿¡¼­ Ưº°ÇÑ Ç׸ñÀ¸·Î ³×ºñ°ÔÀÌÆ® ÇÕ´Ï´Ù.

Æ®¸®-º¸±â À©µµ¿ì¿¡¼­ Ç׸ñÀ» ¿À¸¥ÂÊ ¹öưÀ» Ŭ¸¯ÇÏ¸é ¹®¸Æ-°¨Áö ¸Þ´º¸¦ ºÎ¸¦ °ÍÀÔ´Ï´Ù.

¸ðµç °Ë»ç¸¦ À§ÇÑ ¸Þ´º´Â 2°³ÀÇ °øÅë Ç׸ñÀ» °¡Áý´Ï´Ù:

 

Edit Source  

ÀÌ Ç׸ñÀ» ¼±ÅÃÇϰųª, F4¸¦ ´©¸£¸é ij·µÀ» ¿¡µðÅÍ¿¡¼­ ¼±ÅÃµÈ Ç׸ñ À§¿¡ ¼³Á¤ÇÕ´Ï´Ù.

Find Usages...  

ÀÌ Ç׸ñÀ» ¼±ÅÃÇϰųª Alt + F7 À» ´©¸£¸é  Usage searchÀ» ½ÃÀÛÇÕ´Ï´Ù.


¶ÇÇÑ ¸Þ´º´Â ÇöÀç °´Ã¼(Æ®¸® º¸±â¿¡¼­ ¼±ÅõÈ)¿¡ ´ëÇÑ ¼Ö·ç¼ÇÀ» Á¦¾ÈÇÏ´Â ´Ù¸¥ Ç׸ñÀ» °¡ÁúÁöµµ ¸ð¸¨´Ï´Ù.  ´ç½ÅÀÌ ¸î °³ÀÇ ÆÄÀÏ, ÆÐŰÁö, ¶Ç´Â Àüü ÇÁ·ÎÁ§Æ®¸¦ À§ÇØ °øÅë °Ë»ç ¼Ö·ç¼ÇÀ» »ç¿ëÇØµµ ÁÁ½À´Ï´Ù.

Åø À©µµ¿ì Åø¹Ù´Â ÇÑ ¼¼Æ®ÀÇ ¹öưÀ» °¡Áý´Ï´Ù:

 


Close  



¸ðµç °Ë»ç ÅÇÀ» ´Ý°í, Inspection Åø À©µµ¿ì¸¦ ¼û±é´Ï´Ù.


Autoscroll to Source  

¹öưÀÌ ´­¸± ¶§, Æ®¸® º¸±â¿¡¼­ Ç׸ñÀ» ¼±ÅÃÇϸé Ç׸ñ ¼±¾ð¿¡ ´ëÇØ À§Ä¡ÇÑ  ¼Ò½º ÄÚµå·Î ¿¡µðÅÍ¿¡¼­ ij·µÀ» ³×ºñ°ÔÀÌÆ®ÇÕ´Ï´Ù.


Rerun Inspection  

ÇöÀç ¼³Á¤°ú ÇÔ²² ÄÚµå °Ë»ç¸¦ Àç ½ÇÇàÇÕ´Ï´Ù.


The Export HTML  

 

´ç½Å¿¡°Ô html ÆÄÀÏ·Î ÇöÀçÀÇ °Ë»ç °á°ú¸¦ ÀúÀåÇϵµ·Ï Çã¶ôÇÏ´ÂExport to HTML ´ÙÀ̾ó·Î±×¸¦ ºÎ¸¨´Ï´Ù(ellipsis ¹öưÀ» »ç¿ëÇÏ¿© Ãֽеð·ºÅ͸®¿¡¼­ ¶Ç´Â ÆÄÀÏÀÌ ÀúÀåµÈ °÷À» ÁöÁ¤ÇÏ´Â Save Path  ´ÙÀ̾ó·Î±×¸¦ ºÎ¸¨´Ï´Ù.)

¸¸ÀÏ Open generated HTML in browser Ã¼Å© ¹Ú½º°¡ ¼±ÅõǸé,

.html ÆÄÀÏÀº ºê¶ó¿ìÀú¿¡¼­ Áï½Ã ¿­¸± °ÍÀÔ´Ï´Ù.


Help  

ÇöÀçÀÇ ÇïÇÁ ÆäÀÌÁö¸¦ ¿±´Ï´Ù.


Apply a quickfix  

¸¸ÀÏ ¼±ÅÃµÈ Ç׸ñÀ» À§ÇØ ¹«¾ð°¡ ÀÌ¿ëÇÒ ¼ö ÀÖÀ¸¸é °Ë»ç ÀÀ±Þ óġ¸¦ Àû¿ëÇÕ´Ï´Ù.

 

ÁÖ:  ¸¸ÀÏ ¾î¶² ºÒÀÏÄ¡µµ ¹ß°ßµÇÁö ¾ÊÀ¸¸é ´ç½ÅÀº Ưº°ÇÑ ÆË¾÷À©µµ¿ì¿Í ÇÔ²² ±×°Í¿¡ ´ëÇØ ¾Ë°Ô µÉ °Í ÀÔ´Ï´Ù. ±×¸®°í ¾î¶² Inspection Tool Window µµ ³ªÅ¸³ªÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù.