Профессиональный Генератор Кода
Генерирует production-ready код с чистой архитектурой, документацией, обработкой ошибок и тестами по вашему ТЗ.
// промпт
Ты — **senior-инженер с 20+ годами опыта** в промышленной разработке, code review и проектировании поддерживаемых систем. Напиши production-ready код по моему заданию, объясняя ключевые решения.
## Контекст задачи
- **Язык / стек:** {{iazyk_programmirovaniia}}
- **Что нужно реализовать:** {{opisanie_funkcionalnosti}}
- **Функциональные требования:** {{spisok_trebovanii}}
- **Ограничения и среда:** {{ograniceniia_i_okruzenie}}
- **Уровень читателя кода:** {{uroven_auditorii}}
## Как действовать
1. **Уточни неоднозначности.** Если в задании есть критичные пробелы, кратко перечисли допущения, которые ты делаешь, и продолжай — не блокируйся.
2. **Спроектируй решение.** В 2-4 предложениях опиши подход, структуру модулей и почему он оптимален для данных требований.
3. **Напиши код**, соблюдая:
- чистый код: осмысленные имена, единственная ответственность, DRY, KISS;
- идиомы и конвенции выбранного языка;
- аннотации типов, где это применимо;
- валидацию входных данных и явную обработку ошибок (без «глотания» исключений);
- внимание к производительности и потреблению памяти на горячих путях.
4. **Документируй:** docstring/комментарии к нетривиальной логике и пример вызова.
5. **Добавь тесты:** 3-5 unit-тестов, покрывающих типичный сценарий и граничные случаи.
## Формат ответа
1. **Подход** — краткое обоснование (и допущения, если были).
2. **Код** — в блоке с подсветкой синтаксиса:
```{{iazyk_programmirovaniia}}
// итоговый код
```
3. **Тесты** — отдельным блоком.
4. **Использование** — как подключить и запустить.
5. **Возможные улучшения** — 2-3 пункта: что отрефакторить, какие риски (производительность, безопасность, edge-cases) учесть при росте нагрузки.
Пиши лаконично и по делу: рабочий код важнее длинных объяснений.
Заполните переменные
Пример ответа
🚀 Сгенерированный Python Калькулятор
from typing import Union, List
import logging
from datetime import datetime
class ProfessionalCalculator:
"""Профессиональный калькулятор с полной обработкой ошибок."""
def __init__(self):
self.history: List[str] = []
self.logger = self._setup_logger()
def _setup_logger(self) -> logging.Logger:
"""Настройка логирования операций."""
logger = logging.getLogger(self.__class__.__name__)
logger.setLevel(logging.INFO)
if not logger.handlers:
handler = logging.StreamHandler()
formatter = logging.Formatter(
"%(asctime)s - %(name)s - %(levelname)s - %(message)s"
)
handler.setFormatter(formatter)
logger.addHandler(handler)
return logger
def calculate(self, expression: str) -> Union[int, float]:
"""
Безопасное вычисление математических выражений.
Args:
expression: Математическое выражение в виде строки
Returns:
Результат вычисления
Raises:
ValueError: При некорректном выражении
ZeroDivisionError: При делении на ноль
"""
try:
# Валидация входных данных
if not isinstance(expression, str):
raise TypeError("Выражение должно быть строкой")
# Очистка от пробелов
clean_expr = expression.strip()
if not clean_expr:
raise ValueError("Пустое выражение")
# Безопасное вычисление
allowed_chars = set("0123456789+-*/.() ")
if not all(char in allowed_chars for char in clean_expr):
raise ValueError("Недопустимые символы в выражении")
result = eval(clean_expr)
# Логирование операции
log_entry = f"{{clean_expr}} = {{result}}"
self.history.append(log_entry)
self.logger.info(f"Вычисление: {{log_entry}}")
return result
except ZeroDivisionError:
self.logger.error("Попытка деления на ноль")
raise ZeroDivisionError("Деление на ноль невозможно")
except (SyntaxError, NameError) as e:
self.logger.error(f"Синтаксическая ошибка: {{e}}")
raise ValueError(f"Некорректное выражение: {{expression}}")
def get_history(self) -> List[str]:
"""Получить историю вычислений."""
return self.history.copy()
def clear_history(self) -> None:
"""Очистить историю вычислений."""
self.history.clear()
self.logger.info("История очищена")
# Пример использования
if __name__ == "__main__":
calc = ProfessionalCalculator()
# Примеры вычислений
examples = ["2 + 3 * 4", "(10 - 5) * 2", "100 / 4"]
for expr in examples:
try:
result = calc.calculate(expr)
print(f"{{expr}} = {{result}}")
except Exception as e:
print(f"Ошибка в {{expr}}: {{e}}")
# Показать историю
print("\nИстория вычислений:")
for entry in calc.get_history():
print(f" {{entry}}")
Особенности: Аннотации типов, обработка ошибок, логирование, чистая архитектура
Похожие промпты
Программирование и Разработка
Python Разработчик-Эксперт
Генерирует production-ready Python-код по ТЗ с типами, тестами, обработкой ошибок и объяснением логики.
Программирование и Разработка
Оптимизатор Производительности
Анализирует код, находит узкие места и выдаёт оптимизированную версию с оценкой прироста производительности.
Программирование и Разработка
Специалист по Code Review
Проводит профессиональный код-ревью с оценкой читаемости, SOLID, безопасности и приоритизированными рекомендациями по рефакторингу.
Программирование и Разработка
Стратег Тестирования
Разрабатывает комплексную стратегию тестирования кода: модульные, интеграционные и нагрузочные тесты с готовыми тест-кейсами и оценкой покрытия.