Re[15]: Breaking change
От: karbofos42 Россия  
Дата: 14.12.22 08:48
Оценка:
Здравствуйте, _NN_, Вы писали:

_NN>Почему единственным вариантом добавлять новую функциональность не ломая миллионы строк кода это методы по умолчанию в интерфейсе.

_NN>Как уже указали в Java аналогичная проблема и такое же решение.

Ну, вот в реальной жизни это действительно помогает?
Или спустя некоторое время вылезают неоднозначности и в итоге люди что-то городят своё?
Не лучше ли было не язык коверкать, а написать какой-нибудь фреймворк для плагинов, который бы генерировал нужные прокси и вызывал все эти дефолтные методы?
Что вот делать банально с переименованием метода?
Держать в итоге в интерфейсе и старое имя и новое? А если я просто в enum добавлю пару значений, то как быть? А если не добавлю, а изменю старые, т.к. решил теперь поддерживать Flags?
Эта фича же достаточно узкой выглядит и, на мой взгляд, через неё удобно быстро выкатить новые фишки в продакшон, а вот как это потом поддерживать и дальше расширять?
У меня просто не было задач, где это было бы нужно, потому на практике не использовал и тут чисто теоретический взгляд.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.