Sobes.tech
Junior — Middle
83

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

AI-дан жауап

sobes.tech AI

Принцип единой ответственности (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)

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