Назад к вопросам
Junior — Middle
68
Расскажите о своих навыках и опыте применения паттерна мост в практике разработки.
Ответ от нейросети
sobes.tech AI
Паттерн "Мост" (Bridge) используется для разделения абстракции и её реализации, чтобы они могли изменяться независимо друг от друга. В практике разработки на Java я применял этот паттерн, когда нужно было поддерживать несколько вариантов реализации одного интерфейса, например, разные способы сохранения данных (в базу, в файл, в облако), при этом сохраняя единый интерфейс для клиента.
Пример:
// Абстракция
interface Remote {
void turnOn();
void turnOff();
}
// Реализация
interface Device {
void powerOn();
void powerOff();
}
class TV implements Device {
public void powerOn() { System.out.println("TV включен"); }
public void powerOff() { System.out.println("TV выключен"); }
}
class RemoteControl implements Remote {
private Device device;
public RemoteControl(Device device) { this.device = device; }
public void turnOn() { device.powerOn(); }
public void turnOff() { device.powerOff(); }
}
// Использование
Device tv = new TV();
Remote remote = new RemoteControl(tv);
remote.turnOn();
Такой подход позволяет легко добавлять новые устройства или новые типы пультов, не меняя существующий код.