protected
로 선언.SuperDashboard
클래스는 버전 관리와 UI 관리를 동시에 담당하면 안 됨.큰 함수를 작은 함수 여럿으로 나눈다:
함수의 지역 변수를 인스턴스 변수로 승격시킨다:
그러나 아주아주 신중하게!
특정 함수에서만 사용되는 인스턴스 변수가 많아지면, 클래스의 응집도가 낮아질 수 있기 때문이다.
헬퍼 클래스나 유틸리티 클래스를 사용:
java코드 복사
public class StringHelper {
public static String concatenate(String a, String b) {
return a + b;
}
public static boolean isEmpty(String str) {
return str == null || str.isEmpty();
}
}
내부 클래스 사용:
java코드 복사
public class OuterClass {
private String value;
public OuterClass(String value) {
this.value = value;
}
public void performOperation() {
InnerClass inner = new InnerClass();
inner.helperMethod();
}
private class InnerClass {
public void helperMethod() {
System.out.println("Value: " + value);
}
}
}
적절한 클래스 크기 유지:
메서드 응집도 유지:
응집도가 낮아지면 클래스를 단일 책임으로 나눈다: