“легко поддерживаемый” правда это весьма оценочная фраза , типа что 1 легко другому мб сложно, мне кажется корректнее тут “расширяемость”, возможность добавления функционала без изменения существующего кода
ну как сказать, есть один вполне себе объективный критерий: меньше единиц кода - лучше, чем больше кода (не в ущерб читабельности дженерик программистом, конечно)
ну такое)) я помню раньше упарывался с другом и делалл все программы на генераторах в 1 строку на питоне, спустя пару дней я сам не могу понять что там написано
заметил) но тоже тонкая грань, уменьшение кода может пораждать не всегда оправданные абстракции, что усложняет уже не чтение а структуру проекта (ну и чтение наверное..когда нужно пройти 10 классов наследников чтобы найти нужный метод)