Dynamic, Object, Var

С появлением динамического типа и DLR в .NET 4 теперь у меня есть 3 варианта при объявлении того, что я называю «открытыми» типами:

  • var , локально неявные типы, чтобы выделить «что» вместо «как»,
  • объект , псевдоним для System.Object и
  • динамический , отключите проверки компилятора, добавив методы / свойства во время выполнения

Хотя об этом много написано, ничто из того, что я нашел, объединяет их, и я должен признаться, это все еще немного нечеткое.

Добавьте к этому LINQ, лямбда-выражения, анонимные типы, размышления ... и это становится все более нестабильным.

Я хотел бы увидеть несколько примеров, возможно, противопоставляющих преимущества / недостатки, чтобы помочь мне укрепить мое понимание этих концепций, а также помочь мне понять, когда, где и как мне выбирать между ними.

Спасибо!

7
задан Gustavo Mori 13 July 2011 в 19:48
поделиться