내 프로그램 GUI 클래스와 코어 패키지를 여러 클래스로 구성하여 MVC 패턴을 사용합니다. 핵심 클래스와 Gui 패키지 간의 결합을 줄이기 위해 모든 클래스는 핵심 패키지에있는 Facade 클래스를 조정하여 Gui 패키지와 통신합니다. Gui 패키지에는 응용 프로그램의 "단계"에 따라 다른 Jpanels를 추가하는 기본 프레임 클래스가 있습니다. 예를 들어 LoginPanel은 사용자가 로그인 한 후 MenuPanel로 대체됩니다. 모든 패널은 JPanel을 확장하는 별도의 클래스로 선언됩니다.
핵심 패키지의 Facade coordinating 클래스와 통신 할 Gui 패키지의 일부 조정 클래스를 사용해야합니까? 이 단계에서 내 프레임 또는 Jpanels가 코어 패키지의 조정 클래스에 메시지를 보내고 Gui 패키지에 의한 커플 링을 줄이는 것이 좋은 아이디어인지, 프레임 및 기타 JPanels를 대신하여 클래스를 조정하는 것이 핵심 클래스와 통신하는지 생각합니다.MVC, Gui와 코어 패키지 간의 커플 링 감소
1
A
답변
0
이 응답은 스윙 연습에 관한 것이 아니라 결합을 피하고 응집력을 높이기위한 일반적인 방법입니다.
이 커플 링을 줄이기 위해 당신은 장소에 어떤 프레임 워크없이 표준 자바 당이 개 전략을 따라야합니다 :1. Code to Interfaces instead of Concrete implementations
2. Try to implement Factory design pattern
문제는 구현 세부 사항에 많이 의존한다. 어느 시점에서 코드의 다양한 측면과 어떻게 소통하는지, 서로 이야기 할 수 있어야하는지, 원하는 것처럼 쉽게 할 수 있어야한다는 점에 대한 "아이디어"가 필요합니다. API/클래스를 사용하는 클래스를 변경할 필요없이 이러한 API/클래스의 기본 구현을 변경할 수 있습니다. 달성하고자하는 것에 따라 다양한 기술을 사용할 수 있습니다. Swing은 이미 MVC 중 하나 (유형)이며, 다른 레이어에서 다시 Swing을 멈추게 할 수는 없습니다. – MadProgrammer