본문 바로가기
* IT/Dictionary

초보 개발자의 필수 덕목 "코드 리팩토링(Code Refactoring)" 이란?

by codinguser 2021. 4. 13.

Code Refactoring 이란?


 

코드 리팩토링 단어 그자체로 유추 할 수 있다. 코드를 개선하는 작업을 코드 리팩토링이라고 한다. 즉, 기존에 어떠한 코

드를 조금 더 좋은 코드로 개선하는 작업을 의미한다.

 

 

 

 

 

 

 

 

직관적인 예시 하나가 뭐가 있을까?

(1) - > (2) - > (3) 순으로 효율적 관리를 위한 작업

 

(1) : 각 클래스 타입을 입력하여 일일이 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Dog d = new Dog("강아지"1);
System.out.println(d.toStr());
 
 
 
Cat c = new Cat("고양이"2);
System.out.println(c.toStr());
 
 
 
Bird b = new Bird("새"3);
System.out.println(b.toStr());
 
 
class Dog{
 
 
 
...
 
 
 
}
 
 
 
class Cat{
 
 
 
...
 
 
 
}
 
 
 
class Bird{
 
 
 
...
 
 
 
}
cs

 

(2) 업캐스팅을 통해 배열로 관리(관리의 효율성)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Animal d = new Dog("강아지"1);
Animal c = new Cat("고양이"2);
Animal b = new Bird("새"3);
 
Animal[] arr = {b,c,d};
 
for(int i=0; i<arr.length; i++){
    System.out.println(arr[i].toStr());
}
 
 
 
class Animal{
 
...
 
}
 
 
 
 
class Dog extends Animal{
 
 
 
...
 
 
 
}
 
 
 
class Cat extends Animal{
 
 
 
...
 
 
 
}
 
 
 
class Bird extends Animal{
 
 
 
...
 
 
 
}
 
cs

 

(3) 리스트 라이브러리인 ArrayList를 통한 관리

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import java.util.ArrayList
 
Animal d = new Dog("강아지"1);
Animal c = new Cat("고양이"2);
Animal b = new Bird("새"3);
 
ArrayList<Animal> list = new ArrayList<Animal>();
list.add(d);
list.add(c);
list.add(b);
 
for(int i=0; i<list.size(); i++){
    System.out.println(list.get(i).toStr());
}
 
 
 
class Animal{
 
...
 
}
 
 
 
 
class Dog extends Animal{
 
 
 
...
 
 
 
}
 
 
 
class Cat extends Animal{
 
 
 
...
 
 
 
}
 
 
 
class Bird extends Animal{
 
 
 
...
 
 
 
}
 
cs

 

댓글