Sobes.tech
Junior — Middle

Pouvez-vous montrer un exemple d'application du principe 'Single Responsibility' de SOLID dans une situation réelle?

sobes.tech IA

Réponse de l'IA

Принцип Single Responsibility (Принцип единственной ответственности) говорит, что класс должен иметь только одну причину для изменения, то есть отвечать за одну конкретную задачу.

Пример на Kotlin для Android:

// Плохо: класс отвечает и за логику работы с данными, и за отображение
class UserManager {
    fun loadUser() { /* загрузка пользователя */ }
    fun displayUser() { /* отображение пользователя */ }
}

// Хорошо: разделяем ответственность
class UserRepository {
    fun loadUser() { /* загрузка пользователя из БД или сети */ }
}

class UserView {
    fun displayUser(user: User) { /* отображение пользователя на экране */ }
}

Такой подход упрощает поддержку кода и тестирование, так как каждая часть отвечает за свою конкретную задачу.