forked from templates/nextjs-template
33 lines
2.9 KiB
Markdown
33 lines
2.9 KiB
Markdown
|
|
---
|
|||
|
|
title: Шаблоны генерации
|
|||
|
|
description: "Что такое шаблоны кодогенерации и какие проблемы они решают."
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# Шаблоны генерации
|
|||
|
|
|
|||
|
|
Что такое шаблоны кодогенерации и какие проблемы они решают.
|
|||
|
|
|
|||
|
|
## Проблема
|
|||
|
|
|
|||
|
|
Каждый новый модуль в проекте — компонент, стор, бизнес-модуль — требует однотипной структуры файлов и boilerplate-кода. Ручное создание приводит к трём проблемам:
|
|||
|
|
|
|||
|
|
- **Расхождения.** Разные разработчики создают модули по-разному: забывают `index.ts`, называют типы не по канону, пропускают стили.
|
|||
|
|
- **Время.** Создание одного компонента с типами, стилями и экспортом — 5–10 минут рутины. За спринт набегают часы.
|
|||
|
|
- **Ошибки копипасты.** Копирование существующего модуля и переименование — источник опечаток и забытых ссылок.
|
|||
|
|
|
|||
|
|
## Решение
|
|||
|
|
|
|||
|
|
Шаблоны кодогенерации — это папки с файлами-заготовками в `.templates/`. Вместо ручного создания файлов разработчик вызывает генератор, указывает имя — и получает готовый модуль со всей структурой, именами и boilerplate, подставленными автоматически.
|
|||
|
|
|
|||
|
|
Что дают шаблоны:
|
|||
|
|
|
|||
|
|
- **Единообразие.** Все модули одного типа идентичны по структуре. Канон живёт в шаблоне, а не в памяти разработчика.
|
|||
|
|
- **Скорость.** Генерация модуля — одна команда. Остальное время — на бизнес-логику.
|
|||
|
|
- **Согласованность с архитектурой.** Шаблоны учитывают SLM: правильные слои, сегменты, экспорты. Отклонение от стайлгайда требует осознанного усилия, а не случайного упущения.
|
|||
|
|
|
|||
|
|
## Состав раздела
|
|||
|
|
|
|||
|
|
- [Настройка](./templates-setup.md) — первичная установка: скачивание стандартного набора шаблонов в проект.
|
|||
|
|
- [Создание шаблонов](./templates-create.md) — структура файлов, синтаксис переменных, примеры.
|
|||
|
|
- [Использование](./templates-usage.md) — генерация через VS Code плагин и CLI.
|