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

Какую задачу выполняет шаблон проектирования Методическая Структура?

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

sobes.tech AI

Шаблон проектирования "Методическая Структура" (Template Method) используется для определения скелета алгоритма в базовом классе, позволяя подклассам переопределять некоторые шаги алгоритма без изменения его общей структуры. Это помогает избежать дублирования кода и обеспечивает повторное использование общей логики.

Пример на Java:

abstract class DataProcessor {
    // Шаблонный метод
    public final void process() {
        readData();
        processData();
        saveData();
    }

    abstract void readData();
    abstract void processData();

    void saveData() {
        System.out.println("Saving data to database");
    }
}

class CSVDataProcessor extends DataProcessor {
    void readData() {
        System.out.println("Reading data from CSV file");
    }

    void processData() {
        System.out.println("Processing CSV data");
    }
}

Здесь метод process() задаёт общий алгоритм, а конкретные шаги реализуются в подклассах.