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