IntelliJ IDEA ´Â ¿©·¯ °¡Áö ÀÚ¹Ù ÄÚµå ¸®ÆåÅ丵À» Á¦°øÇÕ´Ï´Ù.
NOTE:
¸®ÆåÅ丵ÀÇ ¸¶Æ¾ ÆÄ¿ï·¯ ¿¡ µû¸£¸é:
Improving the Design of Existing Code (Addison-Wesley, 2000), refactoringÀº "±×°ÍÀÌ ÄÚµåÀÇ ¿ÜºÎ µ¿ÀÛÀ» ¹Ù²ÙÁö ¾ÊÁö¸¸ ±× ³»ºÎ ±¸Á¶¸¦ °³¼±ÇÏ´Â ±×·± ¹æ¹ýÀ¸·Î ¼ÒÇÁÆ®¿þ¾î ½Ã½ºÅÛÀ» º¯°æÇÏ´Â ÇÁ·Î¼¼½ºÀÔ´Ï´Ù. ±×°ÍÀº ¹ö±×¸¦ Æ÷ÇÔÇÒ ±âȸ¸¦ ÃÖ¼ÒÈÇÏ´Â Äڵ带 ±ú²ýÇϱâ À§ÇÑ ÈÆ·Ã ¹æ¹ýÀÔ´Ï´Ù".
»ó¼¼ÇÑ °ÍÀº, http://www.refactoring.com/¸¦ ÂüÁ¶ÇϽʽÿÀ
ÀÌ¿ëÇÒ ¼ö ÀÖ´Â ÄÚµå ¸®ÆåÅ丵:
Rename
Refactorings
Rename
Package
Rename
Class
Rename
Method
Rename
Field
Rename
Local Variable
Rename
Method Parameter
¸Þ¼Òµå ½Ã±×³ÊÃÄ º¯°æ
Ŭ·¡½º ½Ã±×³ÊÃÄ º¯°æ
¸Þ¼Òµå Á¤ÀûÀ¸·Î ¸¸µé±â
ÀνºÅϽº ¸Þ¼Òµå·Î º¯È¯
Move
Refactorings
Move
Package
Move
Class
Move
Members
Move
Inner to Upper Level
Ä«ÇÇ/Ŭ·Ð Ŭ·¡½º
¾ÈÀüÇÑ »èÁ¦
ÃßÃâ ¸Þ¼Òµå
¸Þ¼Òµå ÄÚµå Áߺ¹ÀÇ ±³Ã¼
Introduce Variable
Introduce
Field
Introduce
Constant
Introduce
Parameter
Extract Interface
Extract
Superclass
°¡´ÉÇÑ °÷¿¡¼ ÀÎÅÍÆäÀ̽º »ç¿ë
¸â¹ö ²ø¾î ¿Ã¸®±â
¸â¹ö ¹Ð¾î ³»¸®±â
Replace
Inheritance With Delegation
Inline Refactoring
Inline Variable
Inline Method
À͸íÀ» ³»ºÎ·Î º¯È¯
ÇʵåÀÇ ÀÎĸ½¶È
Replace Temp with Query
Replace Constructor
With Factory Method
Generify
Refactoring
Package and Class Migration
¸¶À̱׷¹ÀÌ¼Ç Æ¯Â¡Àº »ç¿ëÀÚ¿¡ ÆÐŰÁö¿Í Ŭ·¡½ºÀÇ ÁÖ¾îÁø ¼³Á¤¿¡ ÂüÁ¶ÀÇ À̸§À» ¹Ù²Ù´Â °ÍÀ» Çã¶ôÇÕ´Ï´Ù.
´ç½ÅÀº ¿¬¼ÓÀûÀ¸·Î Àû¿ëµÉ °ÍÀÎ ÇÑ ¼¼Æ®ÀÇ º¯°æÀ» ÁöÁ¤Çؾ߸¸ ÇÕ´Ï´Ù.
IDEA´Â ÀüüÀÇ ÇÁ·ÎÁ§Æ®¿¡¼ ÆÐŰÁö¿Í Ŭ·¡½º¿¡ Á¤ÀÇ ¼ø¼¿Í º¯°æ ÂüÁ¶¿¡¼ ÁÖ¾îÁø ¼³Á¤À» ó¸®ÇÒ °ÍÀÔ´Ï´Ù.
±×°ÍÀº ¿ä¼Ò ±×µé ÀÚ½ÅÀÌ ¾Æ´Ï°í ±×µéÀÇ »ç¿ë¸¸À» º¯°æÇÕ´Ï´Ù.
À̰ÍÀº ¸ÊÀ¸·ÎºÎÅÍÀÇ ¿ä¼Ò°¡ ½ÉÁö¾î ÇÁ·ÎÁ§Æ®¿¡¼ ÀÌ¿ëµÇÁö ¾ÊÀ» Áöµµ ¸ð¸£´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù.
´ç½ÅÀÌ ¾î¶² Á¦ 3ÀÚ ÄÚµå(¿¹¸¦ µé¸é ÀϺΠŬ·¡½º ¶óÀ̺귯¸®)°¡ º¯°æÇÏ´Â °Í¿¡ µû¶ó ´ç½ÅÀÇ ¼Ò½º Äڵ带 ¾÷µ¥ÀÌÆ®ÇÒ Çʿ䰡 ÀÖÀ» ¶§ ÀÌ Æ¯Â¡Àº ´ëºÎºÐÀº À¯¿ëÇÕ´Ï´Ù.
¿¹¸¦ µé¸é, ´ç½ÅÀÌ ½ºÀ® 1.1°ú ÇÔ²² ÀÛ¾÷¿¡ ½ºÀ® 1.0.3À» »ç¿ëÇϰí ÀÖ´Â ´ç½ÅÀÇ ¼Ò½º Äڵ带 ¾÷µ¥ÀÌÆ®ÇÒ ¼ö ÀÖ½À´Ï´Ù. À̰ÍÀ» Çϱâ À§Çؼ, ¸ðµç ¼ºê ÆÐŰÁö¿Í ÇÔ²²com.sun.java.swing .* ÆÐŰÁö¿¡ ¸ðµç ÂüÁ¶´Â javax.swing .* ·Î Àç ¸í¸íµÇ¾î¾ß¸¸ ÇÕ´Ï´Ù.
µ¿½Ã¿¡ com.sun.java.swing.plaf .windows ¿Í com.sun.java.swing.plaf.otif ÆÐŰÁöÀÇ ¸ðµç »ç¿ëÀº º¯°æµÇ¾î¼´Â ¾ÈµË´Ï´Ù.
1. ÁÖ ¸Þ´º Tools | Migrate... Ç׸ñÀ» ¼±ÅÃÇÕ´Ï´Ù.
2.
´ÙÀ̾ó·Î±×¿¡¼ ÁøÇàÇϱâ À§ÇÑ ¸¶À̱׷¹ÀÌ¼Ç ¸ÊÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. Ŭ·¡½º¿Í ÆÐŰÁö À̸§ÀÌ Á¤ÀÇµÈ ¼±ÅÃµÈ ¸¶À̱׷¹ÀÌ¼Ç ¸ÊÀº º¯°æµË´Ï´Ù.
¼±ÅÃµÈ ¸¶À̱׷¹À̼ÇÀ» º¸°Å³ª, ±×°ÍÀ» º¯°æÇϱâ À§ÇØ, Edit... ¹öưÀ» ´©¸£½Ê½Ã¿À.
»õ·Î¿î ¸¶À̱׷¹ÀÌ¼Ç ¼³Á¤À» »ý¼ºÇϱâ À§ÇØ, "New..." ¹öưÀ» ´©¸£½Ê½Ã¿À.
3. °è¼ÓÇϱâ À§ÇØ, "Find
usages" ¹öưÀ» ´©¸£½Ê½Ã¿À. 4. ¸ðµç ¹ß°ßµÈ »ç¿ëÀº °Ë»ö °á°ú À©µµ¿ì¿¡¼ ¸ÞÀÎ À©µµÀÇ ¹Ù´Ú ºÎºÐ¿¡¼ º¸¿©Áú °ÍÀÔ´Ï´Ù.
5. ´ç½ÅÀº °á°ú¸¦ ºê¶ó¿ìÁî ÇÒ ¼ö ÀÖ°í, ¸¶À̱׷¹ÀÌ¼Ç ÇÁ·Î¼¼½º µ¿¾È º¯°æµÉ ´ç½ÅÀÇ Äڵ忡¼ ±× À§Ä¡¸¦ º¼ ¼ö ÀÖ½À´Ï´Ù.
6. ½ÇÁ¦ ¸¶À̱׷¹À̼ÇÀ» ¼öÇàÇϱâ À§Çؼ, ÆÐ³ÎÀÇ ¹Ù´Ú¿¡ ÀÖ´ÂDo Migrate ¹öưÀ» ´©¸£½Ê½Ã¿À (¶Ç´Â Alt
+ D¸¦ ´©¸£½Ê½Ã¿À ). ´ç½ÅÀº ¶ÇÇÑ Cancel ¹öư ¶Ç´ÂAlt + C¸¦ ´·¯¼ Á¶ÀÛÀ» Ãë¼ÒÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
¸¶À̱׷¹ÀÌ¼Ç ¼³Á¤ÀÌ ÀúÀåµÇ´Â °÷
|
¸ðµç ¸¶À̱׷¹ÀÌ¼Ç ¼³Á¤Àº ÇÁ·Î±×·¥ ¼³Ä¡ µð·ºÅ͸®ÀÇ config \migration ¼ºê µð·ºÅ͸®¿¡ ÀúÀåµË´Ï´Ù. °¢°¢ÀÇ ¼³Á¤Àº ºÐ¸®µÈ *.xml ÆÄÀÏ¿¡ ÀúÀåµË´Ï´Ù. ¸¶À̱׷¹ÀÌ¼Ç ¼³Á¤ÀÇ À̸§Àº ÆÄÀÏÀÇ À̸§À» Á¤ÀÇ ÇÕ´Ï´Ù.
|