Re[2]: Extension methods
От: vsb Казахстан  
Дата: 30.12.14 20:29
Оценка:
Здравствуйте, Qbit86, Вы писали:

vsb>>Extension methods. Ещё тоньше пудра. Даже упоминать не буду. Какая разница — писать a.b(c) или b(a, c). Никакой.


Q>Разница большая, когда используется fluent API — цепочки вызовов
Автор: Qbit86
Дата: 21.10.14
. Сравни «параллельные» скобки и вложенные, а также порядок вызова методов:


Q>
Q>var y = x.First()
Q>    .Second()
Q>    .Third()
Q>    .Fourth();
Q>

Q>
Q>var y = Fourth(Third(Second(First(x)))); // )))))))
Q>


Ну сахар это, сахар. Кто так пишет, Fitst, Second, Third. Вынеси в промежуточную переменную и разница вообще сотрётся. Искусственный пример, надуманный. Я пишу постоянно такие утилитные мелкие методы на джаве. Жить можно. Смотрится в C# лучше, я не спорю, но это небольшая разница.

var f1 = First();
var f2 = Second(f1);
var f3 = Third(f2);
var f4 = Fourth(f3);
var f5 = Nth(x, 5);
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.