Как структурировать Swing-приложение

Я неУ меня действительно большой опыт работы с Swing или вообще с дизайном графического интерфейса пользователя (несколько приложений WPF в университете примерно того же уровня), однако передо мной была поставлена задача рефакторинга части Swing-приложения на работе.

Часть яМеня попросили рефакторинг вращается вокруг всплывающего окна, которое может отображаться в трех различных форматах в зависимости от определенного объекта значения. Эти 3 разных формата имеют несколько базовых полей, а затем имеют дополнительные, определенные условно. Класс, отвечающий за этот элемент графического интерфейса, имеет длину ~ 5 КБ, и я подумал, что его следует разделить на три подкласса с общим материалом в базовом классе, который они все расширяют. Однако я абсолютно не знаю, правильный ли это подход или нет.

Может ли кто-нибудь выделить некоторые стратегии, используемые при работе с различными компонентами свинга, которые имеют общие элементы, такие как кнопки / поля и т. Д.?

Кроме того, есть ли какие-нибудь большие приложения OSS-свинга, из которых можно извлечь уроки?

Больше информации: Приложение, над которым я работаю, - это большое унаследованное приложение, которое на данный момент довольно ужасно структурировано. Я'Я новичок в команде (и довольно недавний выпускник, так что неу меня большой опыт в этой области), и его попросили попытаться разбить один из огромных классов, отвечающих за отображение этого всплывающего окна, на более мелкие, более удобные в обслуживании компоненты. По сути, в приложении есть всплывающее окно, которое позволяет пользователю реагировать на определенные события, и это имеет три различных вида в зависимости от подтипа запроса, на который он должен ответить. Большая часть элементов GUI одинакова для всех трех подтипов, поэтому мне интересно знать, будет ли наследование лучшим подходом здесь или есть другие стратегии для решения этой проблемы? "

Ответы на вопрос(2)

Ваш ответ на вопрос