Некоторые оптимизации/алгоритмы делают код значительно менее читаемым, поэтому полезно иметь возможность отключать сложную и громоздкую функциональность в файле/модуле, чтобы любые ошибки, возникающие при изменении этого кода, можно было быстро протестировать на простом коде.
В настоящее время использование const USE_SOME_FEATURE: bool = true;
кажется разумным способом, но код читается немного странно, поскольку USE_SOME_FEATURE
используется как ifdef
в C.
Например, clippy хочет, чтобы вы написали:
if foo {
{ ..other code.. }
} else {
// final case
if USE_SOME_FEATURE {
{ ..fancy_code.. }
} else {
{ ..simple_code.. }
}
}
As:
if foo {
{ ..other code.. }
} else if USE_SOME_FEATURE {
// final case
{ ..fancy_code.. }
} else {
// final case
{ ..simple_code.. }
}
Что, ИМХО, ухудшает читабельность и может быть проигнорировано, но вызвано использованием логического значения, где feature
может иметь больше смысла.
Есть ли способ показать функцию в файле, не указывая ее в ящике?
(поскольку это только для внутренней отладки и тестирования изменений в коде).
else if
. Если вас в первую очередь беспокоит чистота здоровья от clippy, я бы поискал какой-нибудь способ отключить этот ворс (вероятно, только в этом случае). - person trentcl   schedule 23.02.2017else
. - person trentcl   schedule 23.02.2017