Например, я могу написать следующий код
var key = ConvertToKey<TViewModel>();
var page = typeof(TView);
_ = _pages.TryAdd(key, page)
? true
: throw new InvalidOperationException($"ViewModel already registered '{key}'");
Или вот так
_ = _pages.TryAdd(ConvertToKey<TViewModel>(), typeof(TView))
? true
: throw new InvalidOperationException($"ViewModel already registered '{ConvertToKey<TViewModel>()}'");
Меня интересует, в чем разница с точки зрения времени выполнения. Аннотация из приведенного выше примера с его простыми типами возврата. Давайте представим, что есть 100 или 1000 подобных методов. Какое из написаний предпочтительнее для лучшей производительности? Во втором случае, в конце концов, результат также сохраняется для передачи. Но без явного создания переменной, как в первом случае.
Может быть, речь идет только о читабельности? И в одном случае удобно написать одну строку, в другом - объявить локальную переменную.