7: я так понимаю, что имеется в виду условие б-м статическое, вроде logging level. Тогда есть известная нам из логгинга же ситуация - что если не просто paint() а paint(BigFatObject)? Тогда если мы знаем, что рисовать не будем, то и BigFatObject нам нафиг не нужен, можно им не заморачиваться. А с анонимным классом - фиг его знает, будет он рисовать или нет. Та же история с отладкой - прилетел какой-то аноним, а что у него внутри? Правильное ли там состояние? Как это понять?
8: понятно, что любой булевский аргумент можно развернуть в две функции. Однако если у этих функций 90% кода общие, то надо или делать вместо этого 8 функций, которые по кусочкам собирают общие части, тщательно избегая необщих, или копипейстить.
9: вообще непонятно, что советуется делать. Refactor как? Почему он вдруг от этого станет obvious?
no subject
7: я так понимаю, что имеется в виду условие б-м статическое, вроде logging level. Тогда есть известная нам из логгинга же ситуация - что если не просто paint() а paint(BigFatObject)? Тогда если мы знаем, что рисовать не будем, то и BigFatObject нам нафиг не нужен, можно им не заморачиваться. А с анонимным классом - фиг его знает, будет он рисовать или нет. Та же история с отладкой - прилетел какой-то аноним, а что у него внутри? Правильное ли там состояние? Как это понять?
8: понятно, что любой булевский аргумент можно развернуть в две функции. Однако если у этих функций 90% кода общие, то надо или делать вместо этого 8 функций, которые по кусочкам собирают общие части, тщательно избегая необщих, или копипейстить.
9: вообще непонятно, что советуется делать. Refactor как? Почему он вдруг от этого станет obvious?