jButton을 사용하는 작은 응용 프로그램을 작성하고 있습니다. 이 질문을 위해서 우리는 nextButton
이라고 부를 것입니다. 프로그램 라이프 사이클 전반에 걸쳐 jButton의 기능을 변경하는 것은 나쁜 설계입니까? 상태 기계와 비슷합니다.jButton의 기능을 변경하는 것이 좋지 않습니까?
nextButton
클릭 할 때마다 내 응용 프로그램 모드가 다음 "상태"로 전환되고 이에 따라보기가 변경됩니다.
즉
class NextButtonListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
ServiceMode mode = model.getMode();
switch (mode) {
case SELECT:
// alter view and give nextButton function1
...
model.setMode(ServiceMode.CHECK);
break;
case CHECK:
// alter view and give nextButton function2
...
model.setMode(ServiceMode.COPY);
break;
case COPY:
// alter view and give nextButton function3
...
model.setMode(ServiceMode.END);
break;
case END:
// alter view and give nextButton function4
...
break;
}
}
}
은 그냥 자신의 기능을 가진 각각의 새로운 버튼의 인스턴스를 더 나은가요? 아니면 가능한 한 여러 기능을 가진 하나의 버튼을 사용하는 것이 더 낫습니까?
나쁜 디자인이라고 결코 들어 본 적이 없습니다. 그들을 숨기기위한 단추를 만드는 것이 더 나은 옵션이 아닙니다. –
일반적으로 하나의 버튼이 하나의 기능 (설정)으로 표시됩니다. 그렇지 않으면 잠재적으로 여러 장소에서 유사한 케이스 문을 사용하게됩니다 ... – Randy
나는 이것이 UI 디자인 문제라고 생각합니다. 그런 행동이 필요하다면 당신은 "좋은"소프트웨어 설계를 내놓을 수 있습니다. – Chedy2149