본문 바로가기
Study/Java

Refactoring

by _비니_ 2023. 8. 7.
Refactoring 이란?

코드의 기능을 건드리지 않으면서 구조에만 변화를 주는 것.

소프트웨어를 개발할 때 설계 후 코드를 작성하는데,
시간이 지나면서 구조가 점점 엉키게되어 리펙토링 작업이 필요한 것!!

 

예시를 통해 알아보좌!!
public class multiplication {
	void print() {
		 for (int i = 1; i <=10; i++) {
			 System.out.printf("%d * %d = %d", 5, i, 5 * i).println();
			}
	}

	void print(int table){
		for (int i = 1; i <=10; i++) {
			 System.out.printf("%d * %d = %d", table, i, table * i).println();
			}
	}

	void print(int table, int from, int to) {
		for (int i = from; i <=to; i++) {
			 System.out.printf("%d * %d = %d", table, i, table * i);
			}
		}
}

위 코드의 문제점 : 반복 ( 똑같은 작업을 세 번이나 다른 메서드에 해야 한다는 문제 )

 

위 코드를 리팩토링한 코드
public class multiplication {
	void print() {
		 print(5);
	}

	void print(int table){
		print(table, 1, 10);
	}

	void print(int table, int from, int to) {
		for (int i = from; i <=to; i++) {
			 System.out.printf("%d * %d = %d", table, i, table * i);
			}
		}
}

 

반응형

'Study > Java' 카테고리의 다른 글

추상화 (인터페이스, 추상 클래스)  (0) 2023.08.08
캡슐화  (0) 2023.08.07
자바 객체 지향 프로그래밍 소개  (0) 2023.08.07
Eclipse 다운로드 & 단축키  (0) 2023.08.07
Java 설치 & 환경 변수 설정  (0) 2023.08.05