Sobes.tech
Назад к вопросам
Junior — Middle
105

Можете рассказать о ситуации, когда применяли паттерн Prototype в своих проектах?

Ответ от нейросети

sobes.tech AI

Паттерн Prototype применяется, когда нужно создавать новые объекты путем клонирования уже существующих, особенно если создание объекта «с нуля» дорогостоящее или сложное.

В одном из проектов я использовал Prototype для создания множества похожих конфигураций объектов с небольшими отличиями. Вместо повторного заполнения всех полей вручную, я реализовал метод clone(), который создавал копию объекта, после чего менял только необходимые параметры.

Пример на Java:

public class Config implements Cloneable {
    private String param1;
    private int param2;

    public Config(String p1, int p2) {
        this.param1 = p1;
        this.param2 = p2;
    }

    @Override
    protected Config clone() throws CloneNotSupportedException {
        return (Config) super.clone();
    }
}

// Использование:
Config original = new Config("default", 10);
Config copy = original.clone();
copy.param2 = 20; // изменяем только нужное

Это ускоряло создание объектов и уменьшало дублирование кода.