Ну да, куда уж мне до высших материй
И с чего ты взял, что у меня отсутствует
правильное твое понимание? Я прекрасно понимаю, как бы сделал ты. И именно это и называю "махровым ООП". То есть ООП ради ООП.
Чтоб не быть голословным немного подробностей.
Мне с одного сервиса предоставляют некоторые данные. Предоставляют их в виде DTO'шки. Свойств много, больше 30. Ну и соответственно дали класс, который по большому счету состоит из овер 30 геттеров. Мне из них нужно только 8. Это раз.
В API (в
моем апи) предусмотрено аварийное получение данных с резервного сервиса, если вдруг что-то случилось с основным. Резервный сервис мой, он предоставляет данные за последний актуальный период. Ну не суть, он тоже выплевывает DTO. В нем, естественно 8 основных полей. Ибо остальных данных тупо нет в системе.
В итоге имеем два разных объекта, сформированных разными классами.
И тут, как бы сделал ты: ты как минимум слепил бы адаптеры. Или приспособил бы какой-нибудь мост. Или еще чего-нибудь наворотил из паттернов. Это же так "правильно", наклепать кучу классов, чтоб все по учебнику. Главное не трогать ничего руками в исходниках, а вдруг что-нибудь!
В итоге имеем минимум 3 класса, в дном 37 методов, в другом 8, в третьем хз. А то и больше.
Я же просто выкинул все лишнее, оставил 8 геттеров и добавил одно поле, по которому определяю, откуда данные и их актуальность. В итоге имею всего один класс с 9 геттерами. Ну еще сделал там кое что по мелочи - не важно. Причем этот класс совсем не такой, с помощью которых формировались DTO'шки. Это к вопросу о работе объекта с "созвучными" классами.
Да, с твоей точки зрения это неверно, ибо нарушает святая святых - постулаты махрового ООП. Инкапсуляцию. И делегирование заодно. Грешен, каюсь.
Но я не вижу плюсов в твоем подходе, а вот минусов вижу кучу.
С другой стороны, моя схема работает больше 6 лет и пережила несколько "модификаций" DTO стороннего сервиса. Они что то там добавляют постоянно, то, что мне ну вообще не нужно. И какой смысл обновлять их версию, если это все в пустоту. И я не вижу недостатков, а плюсы очевидны.
Я уже говортил как то, что нарушать принципы можно и нужно, если нарушаешь их осознанно и продуманно. От этого гораздо больше профита, чем от тупого поклонения им, как Библии.
Может я в чем то и не прав, но ты, кроме как "это так, потому что это так должно быть!" не приводишь никаких аргументов. И действительно, обсуждать с тобой это нет смысла, как нет смысла дискутировать с религиозными фанатиками:
Ад есть! Не смей усомниться, иначе будешь гореть в аду!
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.