Специалист по Code Review
Проводит профессиональный код-ревью с оценкой читаемости, SOLID, безопасности и приоритизированными рекомендациями по рефакторингу.
Пример ответа
📊 Отчет о Code Review
Общая Оценка: 6/10
✅ Сильные Стороны
- Хорошие имена переменных и функций
- Последовательное форматирование кода
- Базовая обработка ошибок присутствует
⚠️ Найденные Проблемы
1. Нарушение принципа единственной ответственности
Влияние: ВЫСОКОЕ
Предложение: Разделить класс UserManager на отдельные сервисы
# ❌ Текущий код: один класс делает слишком много
class UserManager:
def authenticate_user(self, username, password):
# логика аутентификации
pass
def send_welcome_email(self, user):
# отправка email
pass
def generate_user_report(self, user_id):
# генерация отчетов
pass
def backup_user_data(self, user_id):
# резервное копирование
pass
# ✅ Улучшенная версия: разделение ответственности
class AuthenticationService:
def authenticate_user(self, username: str, password: str) -> bool:
"""Только аутентификация пользователей."""
pass
class EmailService:
def send_welcome_email(self, user: User) -> None:
"""Только отправка email."""
pass
class ReportGenerator:
def generate_user_report(self, user_id: int) -> Report:
"""Только генерация отчетов."""
pass
class BackupService:
def backup_user_data(self, user_id: int) -> None:
"""Только резервное копирование."""
pass
2. Отсутствие аннотаций типов
Влияние: СРЕДНЕЕ
Предложение: Добавить typing для улучшения читаемости
# ❌ Без типов
def process_data(data, options):
return data.transform(options)
# ✅ С аннотациями типов
from typing import Dict, List, Any
def process_data(
data: List[Dict[str, Any]],
options: Dict[str, Any]
) -> List[Dict[str, Any]]:
"""Обработка данных с заданными опциями."""
return data.transform(options)
🚀 Рекомендации
- Принципы SOLID: Применить все пять принципов
- Dependency Injection: Внедрить для тестируемости
- Unit тесты: Покрытие минимум 80%
- Паттерны проектирования: Factory, Observer, Strategy
- Документация: Добавить docstring для всех публичных методов
🔧 План рефакторинга
- Разбить большие классы на меньшие (SRP)
- Добавить интерфейсы для абстракции
- Внедрить dependency injection
- Написать comprehensive тесты
- Добавить типизацию везде
Похожие промпты
Python Разработчик-Эксперт
Генерирует production-ready Python-код по ТЗ с типами, тестами, обработкой ошибок и объяснением логики.
Профессиональный Генератор Кода
Генерирует production-ready код с чистой архитектурой, документацией, обработкой ошибок и тестами по вашему ТЗ.
Оптимизатор Производительности
Анализирует код, находит узкие места и выдаёт оптимизированную версию с оценкой прироста производительности.
Стратег Тестирования
Разрабатывает комплексную стратегию тестирования кода: модульные, интеграционные и нагрузочные тесты с готовыми тест-кейсами и оценкой покрытия.