Я исправлял ошибку на этом очень длинном и подробном методе в C# и продолжал находить эти избыточные if
по всему месту.Рефакторинг. Должен ли я оставлять избыточным, если дело
эс
//var objParam = new SqlParameter(); var cmd = new SqlCommand(); var myVar = new Foo();
objParam = cmd.Parameters.Add("@SomeParam", SqlType.NVarchar, 40);
if(myVar.SomeParam.Length > 4)
objParam.Value = myVar.SomeParam.Substring(0, 40);
else
objParam.Value = myVar.SomeParam;
эти if
s повторяются миллион раз везде, и всегда SqlType.NVarChar
.
Мой вопрос в том, должен ли я оставить их? Я полагаю, это не делает код медленнее или что-то еще, но методы более длинные, и это не помогает читаемости.
Я думаю, что все они должны быть заменены
objParam = cmd.Parameters.Add("@SomeParam", SqlType.NVarchar, n);
objParam.Value = myVar.SomeParam.Substring(0, n);
с n
число символов, очевидно.
Примечание: Я знаю, что это VB6-эск способ добавления параметров очень старый, но я стараюсь моим босс не замечать весь маленький рефакторинг я делаю на этих старых программах;)
Вы могли бы поставить дело в методе ... – LegionMammal978
я советую не менять код кого-то другого, если он работает. Если продукт у вас нормально, если нет, у вас могут быть только проблемы. 1) Вы можете ввести ошибку -> в этом случае шанс низкий. 2) Программист-разработчик может видеть это и не радовать его. У каждого есть способ работать. Я не защищаю этот код, это глупо, но есть люди, которые могут быть оскорблены этим. В качестве производительности это не имеет большого значения, так как читаемость действительно плохая. – mybirthname
'> создатель программы может ее увидеть и не будет рад этому. Я работаю, не радуя других программистов. Я хочу оставить после меня код, который каждый программист будет читать просто, методы, которые могут быть прочитаны на одном экране (экран? Я имею в виду без прокрутки). Конечная цель - работать лучше и эффективнее. – fra9001