Смотрие. У вас класс должен делать что-то одно. Как можно более атомарное и не сильно сложное. Это что-то - и есть обязанность которую класс должен реализовать. И единственная причина, по которой вам когда-либо нужно будет вносить изменения в этот класс - это лишь ради изменения в его назначении. Если у вас класс делает несколько вещей, и изменения могут касатся как одной так и другой части логики - то такой класс принято считать не сильно соответствующим SRP
давайте вернемся A class should have only one reason to change
кто-то знает что это за ризон без примеров или нет?
Имеется в виду не то что есть единая "причина" по которой меняются все классы. Скорее что изменения в одном классе должны иметь единый источник. Я для себя single responsibility рассматриваю как то что класс должен нести ответственность перед одной внешней ролью.
Имеется в виду не то что есть единая "причина" по которой меняются все классы. Скорее что изменения в одном классе должны иметь единый источник. Я для себя single responsibility рассматриваю как то что класс должен нести ответственность перед одной внешней ролью.