Вы все верно говорите. Если бы задача стояла сделать что то универсальное для широкого круга пользователей, неизвестно в каких условиях использующих этот код, то стоило бы предусмотреть максимум вариантов использования. Но как я уже писал, не существует универсальной защиты от рукожопия. Особенно при условии, что код будет меняться "не вникая в сам метод".
В примере, написанном за 15 минут, я просто использовал логику ТС. Подразумевалось, что это основная логика, а доп функционал без проблем можно прикрутить при необходимости... Хотя даже без доработок это должно без проблем работать под описанные условия.
Социальные закладки