2010-07-04 26 views
10

Trabajé en el proyecto .NET 1.1 durante mucho tiempo, y estaba atrapado en C# 1.0 y ahora me gustaría ponerme al día con lo último y lo mejor.Lista de nuevas funciones en C# 2.0, 3.0 y 4.0

Google devolvió mucha información sobre las nuevas funciones en C# v2.0, pero para las versiones 3 y 4 solo encontré información parcial.

¿Hay algún lugar en Internet alguna lista de todas las características nuevas introducidas en C# en v2.0, v3.0 y v4.0?

Respuesta

23

Completo complemento para mi propio libro, pero con suerte no gratuito: obtenga la versión de acceso anticipado del second edition of C# in Depth. Se salta C# 1, pero entra en detalles sobre todas las características de C# 2, 3 y 4.

Si lo que desea es una lista de características, sin embargo, del Apéndice C:

C# 2.0:

Las principales características de C# 2 fueron genéricos, tipos anulables, métodos anónimos y otras mejoras relacionadas con delegados y bloques de iteradores. Además, se introdujeron varias características más pequeñas: tipos parciales, clases estáticas, propiedades con diferentes modificadores de acceso para getters y setters, alias de namespace, directivas pragma y búferes de tamaño fijo.

C# 3.0:

C# 3 construido principalmente hacia LINQ, aunque muchas características son útiles en otros lugares. Las propiedades automáticas, la tipificación implícita de matrices y las variables locales, el objeto y los iniciadores de colecciones y los tipos anónimos se tratan en el capítulo XREF ch8. Las expresiones Lambda y los árboles de expresión extendieron el progreso relacionado con el delegado realizado en la versión 2.0, y los métodos de extensión proporcionaron el último ingrediente para las expresiones de consulta. métodos parciales solamente se añadieron en C# 3, aunque los tipos parciales sí eran en C# 2. Como Marc señala en los comentarios, tipo genérico inferencia recibió un impulso considerable en C# 3.

C# 4.0:

C# 4.0 tiene algunas características destinadas a la interoperabilidad, pero no tiene la misma mentalidad de C# 3.0. De nuevo, existe una división razonablemente clara entre las características "pequeñas" (argumentos con nombre, parámetros opcionales , mejor interoperabilidad COM, varianza genérica) y la gran característica del tipado dinámico .

Tengo una "guía de bluffers" para C# 2 y otra para C# 3, pero no he hecho el equivalente para C# 4 pero me temo.

+1

Buen resumen (por supuesto). Lo único que agregaría (sin rasguñarme un poco) es la inferencia de tipo genérico mucho más fuerte en C# 3.0 - es sorprendentemente simple escribir código accidentalmente que no es compatible con 2.0. –

+0

@Marc: Ooh, cierto. Agregaré eso. –

+0

"namespace aliases"? ¿Te refieres a escribir alias o alias externos? – Timwi

2
  • C# 3.0:

variables locales Implícitamente mecanografiadas
tipos anónimos
métodos de extensión
objeto y recogida de inicializadores
Lambda expresiones de consulta
expresiones
árboles de expresión

3

El cambio más grande de de 1.1 a 2.0 (IMO) fue el introduction of generics. Los genéricos también son una base para muchas otras tecnologías .NET desde 2.0. Yo sugeriría que comiences tus estudios realmente entendiendo muy bien los genéricos.

Cuestiones relacionadas