Re[6]: Закон сохранения сложности
От: IT Россия linq2db.com
Дата: 20.07.09 17:35
Оценка: +1
Здравствуйте, Lloyd, Вы писали:

L>Предлагаю рассмотреть другой вариант.

L>Было var a = b + c; его отрефактирили в var a = Add(b, c);
L>Если мы теперь вернемся к первоначальному var a = b + c;, то получим решение, которое проще (чем var a = Add(b, c)).
L>Т.е получаем уменьшение сложности.

Уменьшение по сравнению с чём? Исходную сложность ты не уменьшил, а излишнюю да, устранил. Или вот ещё:

if (a == true)
{
    return true;
}
else if (a == false)
{
    return false;
}
else if (a != true && a != false)
{
    throw new ApplicationException()
}

такой код упрощается до:

return a;

при этом сложность этого кода уменьшается. Но начальная сложность никуда не делась. Если задача ставится как, например, умножить два числа, то можно применить множество практик и техник, но умножение или заменяющий его алгоритм в том или ином виде в коде присутствовать должен. От этого никуда не деться и это указано в статье.

L>Я это имел в виду.


Возможно не все формулировки и объяснения получились достаточно чёткими и однозначными. Я над этим работаю
Если нам не помогут, то мы тоже никого не пощадим.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.