Встречается на собеседованиях • сегодня
Для чего нужен паттерн проектирования Proxy
Паттерн Proxy предоставляет суррогатный объект, контролирующий доступ к другому объекту. Основные сценарии использования:
- Ленивая инициализация (Virtual Proxy) – откладывает создание дорогостоящего объекта до момента его реального использования.
- Контроль доступа (Protection Proxy) – проверяет права доступа перед вызовом основного объекта.
- Логирование (Logging Proxy) – добавляет логирование вызовов методов.
- Кеширование (Cache Proxy) – сохраняет результаты запросов для повторного использования.
Пример Virtual Proxy:
java
interface Image {
void display();
}
class RealImage implements Image {
private String filename;
public RealImage(String filename) {
this.filename = filename;
loadFromDisk();
}
private void loadFromDisk() {
System.out.println("Loading " + filename);
}
public void display() {
System.out.println("Displaying " + filename);
}
}
class ProxyImage implements Image {
private RealImage realImage;
private String filename;
public ProxyImage(String filename) {
this.filename = filename;
}
public void display() {
if (realImage == null) {
realImage = new RealImage(filename);
}
realImage.display();
}
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы