난 작은 난이 스레드를 읽고 함께했다 질문이 반쯤 마지막 인 : 난의 정말 엄청난 금액이 내 응용 프로그램에서 Why are static variables considered evil?캐시
하는 구성 변수를 말할 수 있습니다. 예 : 글꼴, 색상, 캐시 된 이미지, ... 그들 중 대부분은 결코 정적이 아닌 것으로 생각합니다. 그럼에도 불구하고 내 응용 프로그램은 애플릿이고 클라이언트는 애플릿을 한 번 실행 했으므로 이러한 구성 정보 중 일부는 변경 될 수 있습니다. 따라서 이러한 종류의 데이터는 거의 변경되지 않지만 최종이라고 간주되지는 않습니다. 내가 그런 식으로는 거대한 처리 정보의 양 또한
, 난 그런 자신의 열거 형에 그들을 매핑 : 그런 열거 형을 사용하여
public enum Fonts {
COLOR_CHOOSER, MAP_META_DATA;
private Font localFont;
public Font getValue() {
return localFont;
}
private void setValue(Font newFont) {
localFont = newFont;
}
}
protected static void initFonts() {
Fonts.COLOR_CHOOSER.setValue(new Font("Arial", Font.PLAIN, 15));
Fonts.MAP_META_DATA.setValue(font_race.deriveFont(Font.BOLD, 11));
}
, 내가 찾고 값을 확인할 수 있었다 꽤 쉽게, 나는 한 곳에서 모든 것을 유지할 수 있습니다.
정적 인 관계로 다른 사람들이 개체 안에 배치 할 수 있으므로 어쨌든 사용됩니다. 그럼에도 불구하고, 나는 현재의 행동을 더 읽기 쉽다고 생각했다.
이외에도 initFonts() 메소드는 json 또는 xml과 같은 외부 소스에서 현재 하드 코딩 된 값을 가져 오는 매핑 메소드로 대체됩니다. 따라서 OO를 사용하면 들어오는 데이터를 해당 객체로 전달할 수 있습니다. 이는 읽기 쉽지 않은 것으로 간주됩니다.
내 질문을 내놓으려면 어떻게 여러분 중 누군가가 중간 값 최종 매개 변수를 매핑/캐시합니까 (또한 키 값으로 열거 형을 사용하는 해시 맵이 있다고 생각합니다). 예 : 이미지, 글꼴, 색상, 픽셀 여백 등.이 열거 형을 적절하게 사용하고 있습니까? 아니면 정적 인 관계로 이러한 열거 형을 악의로 간주 할 수 있습니까? 그렇다면 - 적절한 방법은 무엇이며, 읽기 쉽고 유지하기 쉽습니다.
나는 가능한 해결책이 될 수있는 해결책을 찾았지만 위에서 언급 한 스레드를 읽은 후에 전체 디자인을 다시 생각하게 될 것입니다.
어떤 조언을 해주셔서 감사합니다. 친절하게 생각합니다. 그것은 개인 방법을 사용하고 경우에도
아무도 코멘트가 없습니다. – user1514195