Sobes.tech
Junior — Middle
87

Можешь привести пример, когда применение принципа единой ответственности (SRP) помогает повысить качество кода?

Resposta da IA

sobes.tech IA

Принцип единой ответственности (SRP) помогает повысить качество кода, разделяя разные обязанности на отдельные классы или функции. Это облегчает поддержку, тестирование и расширение.

Например, если у вас есть класс, который одновременно читает данные из файла и обрабатывает их, лучше разделить эти задачи:

class FileReader:
    def read(self, filepath):
        with open(filepath, 'r') as file:
            return file.read()

class DataProcessor:
    def process(self, data):
        # обработка данных
        return data.upper()

# Использование
reader = FileReader()
data = reader.read('data.txt')
processor = DataProcessor()
result = processor.process(data)

Такой подход упрощает изменение логики чтения или обработки без риска повредить другую часть кода.