Rename Class Refactoring

 

Rename Class ¸®ÆÑÅ丵Àº »ç¿ëÀÚ¿¡°Ô ƯÁ¤ÀÇ Å¬·¡½ºÀÇ À̸§À» ¹Ù²Ù°í, Äڵ忡¼­ Ŭ·¡½º¿¡ ¸ðµç ÂüÁ¶¸¦ ÀÚµ¿ÀûÀ¸·Î Á¤Á¤ÇÏ´Â °ÍÀ» Çã¶ôÇÕ´Ï´Ù.

rename a class Çϱâ À§Çؼ­, ù ¹øÂ°·Î ÇÁ·ÎÁ§Æ® ºä (Project, Source ¶Ç´Â Commander)ÀÇ ¾î´À °Í¿¡¼­ ±×°ÍÀ» ¼±ÅÃÇϰųª, ¶Ç´Â ¿¡µðÅÍ¿¡¼­ ±× À̸§ÀÇ Ä³·µÀ» À§Ä¡Çϰí Shift + F6 (´Ù¸¥ ¹æ¹ýÀº ÁÖ ¸Þ´º·ÎºÎÅÍ ¶Ç´Â ÆÐŰÁö¿¡¼­ ¸¶¿ì½º ¿À¸¥ÂÊ ¹öưÀ» Ŭ¸¯ÇÏ¿© ºÒ·ÁÁö´Â ÆË¾÷ ¸Þ´º·ÎºÎÅÍ Refactor |  Rename... ¸Þ´º Ç׸ñÀ» ¼±ÅÃÇÕ´Ï´Ù) ¸¦ ´©¸¨´Ï´Ù.

´ÙÀ½ÀÇ ´ÙÀ̾ó·Î±×´Â »õ·Î¿î Ŭ·¡½º À̸§À» ÁöÁ¤Çϱâ À§ÇØ ³ªÅ¸³¯ °ÍÀÔ´Ï´Ù:



1.  ÅؽºÆ® Çʵ忡¼­, Ŭ·¡½ºÀÇ »õ·Î¿î À̸§À» ÁöÁ¤ÇÕ´Ï´Ù.
2.  ¸¸ÀÏ ´ç½ÅÀÌ ¹®ÀÚ¿­°ú ÁÖ¼®¿¡¼­ Ŭ·¡½º À̸§ »ç¿ë¿¡ ´ëÇØ Ž»öÇÏ°í ½Í¾îÇϸé Search in comments and strings Ã¼Å© ¹Ú½º¸¦ »ç¿ë °¡´ÉÇÏ°Ô ÇϽʽÿÀ.
3.  ¸¸ÀÏ ´ç½ÅÀÌ IDEA°¡ non-java ÆÄÀÏ¿¡¼­ ¼±ÅÃµÈ Å¬·¡½º »ç¿ë¿¡ ´ëÇØ Ž»öÇϱ⸦ ¿øÇÑ´Ù¸é Search in non-java files Ã¼Å© ¹Ú½º¸¦ »ç¿ë °¡´ÉÇÏ°Ô ÇϽʽÿÀ.
4.  ¸¸ÀÏ ´ç½ÅÀÌ IDEA°¡ Àǹ̰¡ ÀÖ´Â À̸§À» Á¦¾ÈÇÒ ¼ö ÀÖ´Â ±× Ŭ·¡½º ŸÀÔÀÇ º¯¼ö¸¦ À§ÇØ Å½»öÇϱ⸦ ¿øÇÑ´Ù¸é Rename variables   Ã¼Å© ¹Ú½º¸¦ »ç¿ë °¡´ÉÇÏ°Ô ÇϽʽÿÀ.
5.  ¸¸ÀÏ ´ç½ÅÀÌ IDEA°¡ Àǹ̰¡ ÀÖ´Â À̸§À» Á¦¾ÈÇÒ ¼ö ÀÖ´Â ±× Ŭ·¡½º »ó¼ÓÀÎÀ» À§ÇØ Å½»öÇϱ⸦ ¿øÇÑ´Ù¸é Rename inheritors   Ã¼Å© ¹Ú½º¸¦ »ç¿ë °¡´ÉÇÏ°Ô ÇϽʽÿÀ.
6.  ¸¸ÀÏ ´ç½ÅÀÌ Preview usages to be changed Ã¼Å© ¹Ú½º¸¦ »ç¿ë°¡´É ÇÏ°Ô Çϸé, IDEA´Â ¼±ÅÃµÈ Å¬·¡½ºÀÇ »ç¿ë¿¡ ´ëÇØ °Ë»öÇÒ °ÍÀ̰í, Find À©µµ¿ì¿¡¼­ °á°ú¸¦ Ç¥½ÃÇÒ °Í ÀÔ´Ï´Ù.
7.  °è¼ÓÇϱâ À§Çؼ­ OK¸¦ Ŭ¸¯ÇÕ´Ï´Ù.  ¸¸ÀÏ ´ç½ÅÀÌ Preview ¿É¼ÇÀ» ¼±ÅÃÇÏÁö ¾ÊÀ¸¸é, ¸ðµç Ŭ·¡½ºÀÇ »ç¿ë°ú ÂüÁ¶´Â Áï½Ã º¯°æµÉ °ÍÀÔ´Ï´Ù.

´ÙÀ½ÀÇ »ç¿ëÀº À̸§ÀÌ º¯°æµË´Ï´Ù.

 

*    ÀÓÆ÷Æ® ½ºÅ×ÀÌÆ®¸ÕÆ®

*    Å¬·¡½ºÀÇ ¼ö½Ä À̸§

*    ¼±ÅÃµÈ Å¬·¡½º ŸÀÔÀÌ ÀÖ´Â º¯¼ö

¸¸ÀÏ Rename variables ¿É¼ÇÀÌ ¼±ÅõǸé, ´ç½Å¿¡°Ô Rename Variables ´ÙÀ̾ó·Î±×°¡ ÇÁ·ÒÇÁÆ® µÉ °Í ÀÔ´Ï´Ù.


IDEA
Àº Àǹ̰¡ ÀÖ´Â À̸§ÀÌ ±¸ÃàµÉ ¼ö ÀÖ´Â º¯¼ö¸¸À» °Ë»öÇϰí, Ç¥½ÃÇÕ´Ï´Ù.  ¿¹¸¦ µé¸é, myClass ´Â ourClass·Î   
º¯ÇüµÉ ¼ö ÀÖ°í, ±×·± À̸§Àº Á¦¾ÈµÉ °ÍÀÔ´Ï´Ù. ±×·¯³ª IDEA°¡ aaa·Î ±×·± À̸§¿¡ ´ëÇÑ Á¤È®ÇÑ ÃßÃøÀ» ¸¸µé ¼ö´Â ¾ø½À´Ï´Ù.

*    Å¬·¡½º »ó¼ÓÀÎ
¸¸ÀÏ Rename inheritors ¿É¼ÇÀÌ ¼±ÅõǸé, ´ç½Å¿¡°Ô Rename Inheritors ´ÙÀ̾ó·Î±×°¡ ÇÁ·ÒÇÁÆ® µÉ °Í ÀÔ´Ï´Ù( ±×°ÍÀº À§¿¡ ¾ð±ÞµÈ Rename Variables¿Í ±âº»ÀûÀ¸·Î À¯»çÇÑ).  IDEA´Â Àǹ̰¡ ÀÖ´Â À̸§ÀÌ ±¸ÃàµÉ ¼ö ÀÖ´Â »ó¼ÓÀÎ ¸¸À» °Ë»öÇϰí, Ç¥½ÃÇÕ´Ï´Ù.  ¿¹¸¦ µé¸é, MyClassExt ´Â OurClassExt·Î º¯ÇüµÉ ¼ö ÀÖ°í, ±×·± À̸§ÀÌ Á¦¾ÈµÉ °ÍÀÔ´Ï´Ù. ±×·¯³ª IDEA°¡ aaaExt·Î¼­ ±×·± À̸§¿¡ ´ëÇÑ Á¤È®ÇÑ ÃßÃøÀ» ¸¸µé ¼ö´Â ¾ø½À´Ï´Ù.

¸¸ÀÏ Preview ¿É¼ÇÀÌ »ç¿ë °¡´ÉÇÏ°Ô ÇÏ°Ô µÇ¸é,  Refactoring preview À©µµ¿ì´Â À̸§ÀÌ º¯°æµÇ´Â Ŭ·¡½ºÀÇ ¸ðµç ¹ß°ßµÈ »ç¿ëÀ» Ç¥½ÃÇÕ´Ï´Ù.  ÀÌ À©µµ¿ì¿¡¼­ ´ç½ÅÀÌ ¸®ÆåÅä Çϱ⸦ ¿øÇÏ´Â »ç¿ëÀ» Á¦¿ÜÇÒ/Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù.


¸¸ÀÏ Preview ¿É¼ÇÀÌ ºÒ°¡´ÉÇÏ°Ô µÇ¸é, ¸¸ÀÏ ¹ß»ýÀÌ ÄÚ¸àÆ®¿Í ¹®ÀÚ¿­¿¡¼­ ¹ß°ßµÇ¸é Refactoring preview À©µµ¿ì´Â ¾î¶»°Ô ÇØ¼­µçÁö ³ªÅ¸³¯Áöµµ ¸ð¸£¸ç, ¶Ç´Â ¿µÇâÀ» ¹Þ´Â ÆÄÀÏÀº Àбâ Àü¿ëÀÔ´Ï´Ù.