Ответ
Паттерны программирования — это типовые решения распространённых проблем в разработке ПО. Они не готовый код, а шаблоны, которые можно адаптировать под конкретную задачу.
Основные категории:
- Порождающие (например, Singleton, Factory) — создание объектов.
- Структурные (например, Decorator, Adapter) — организация классов и объектов.
- Поведенческие (например, Observer, Strategy) — взаимодействие между объектами.
Пример Singleton на TypeScript:
class Database {
private static instance: Database;
private constructor() {}
static getInstance(): Database {
if (!Database.instance) {
Database.instance = new Database();
}
return Database.instance;
}
}
const db1 = Database.getInstance();
const db2 = Database.getInstance();
console.log(db1 === db2); // true
Паттерны ускоряют разработку, делают код читаемее, но их стоит применять обдуманно, чтобы не усложнять проект.