Вопрос

Мне интересно: какова лучшая инструкция с точки зрения производительности между этими 2 версиями:

Background = Application.Current.Resources[condition ? BackgroundName1 : BackgroundName2] as Brush;

а также:

Background = condition ? Application.Current.Resources[BackgroundName1] as Brush : Application.Current.Resources[BackgroundName2] as Brush;

Есть ли разница? А если да, это лучше?

Спасибо

NB: backgroundname1 & 2 - это просто строки

Это было полезно?

Решение

Первый короткий и более читаемый.

Также легче поддерживать.
Если вы позже измените его, чтобы прочитать другой словарь ресурсов, вы можете забыть изменить вторую половину второго.

Первый также более четко читает из одного словаря.

Другие советы

Во-первых: используйте профилировщик, чтобы найти самую медленную вещь. Если у вас проблемы с производительностью, это не имеет смысла тратить часы или дни, работающие над тем, чтобы сделать что-то быстрее, что уже достаточно быстро.

Во-вторых: Вы можете определить ответ на ваш вопрос, пытаясь оба образом и тщательно измерять, чтобы увидеть, есть ли разница. Не спрашивайте нас, что быстрее; Мы не знаем, потому что мы не пробовали и не имели возможности попробовать это.

Не слишком догнать в микрооптизациях! Усиление производительности, которое вы получите, будет Nil. Идите на код, который более читабелен и легче понять в конце.

Никакая разница.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top