Профессиональный Генератор Кода

Генерирует 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, безопасности и приоритизированными рекомендациями по рефакторингу.

Программирование и Разработка

Стратег Тестирования

Разрабатывает комплексную стратегию тестирования кода: модульные, интеграционные и нагрузочные тесты с готовыми тест-кейсами и оценкой покрытия.