Pregunta

¿Hay ventajas para compilar .NET Framework 3.5 en lugar de 2.0?

Por ejemplo, menos consumo de memoria, de inicio más rápido, mejor rendimiento...

Personalmente no lo creo, sin embargo, puede haber perdido algo.

Editar:Por supuesto que hay más características en el framework 3.5, pero estos no son el foco de esta pregunta.

Edit2:Al parecer no existen ventajas.

Edit3:Sí me refería a la orientación del Marco.He instalado la última versión 3.5 SP1 y VS 2008, por lo que ¿cuál es la diferencia entre la compilación y la orientación de un marco?Me pueden orientar el marco en las opciones de proyecto, pero ¿cómo puedo 'compilar con" un marco específico de la versión?Yo no sabía que hay una diferencia.

Edit4:Así que por ahora estamos de acuerdo en que no hay ventajas.

Gracias por las opiniones

¿Fue útil?

Solución

Hay una diferencia entre la compilación y la orientación.

Compilar el código con el (por ejemplo) de C# 3.0 compilador probablemente le dará un impulso en el rendimiento (muy poco, de todos modos) como en la optimización para generar código IL migh se han incluido.También permite utilizar algunas de las nuevas características como las propiedades automáticas o de expresiones lambda.

La orientación de un determinado marco se asegurará de que su montaje se realiza para que el marco (y posteriores) y se producirá el caso de la orientación para el 2.0 y el uso de un 3.5 de la biblioteca.No hay mejoras de rendimiento está directamente relacionado con que, a menos que tu la sustitución de una clase de un marco con otro "más rápido" de la clase.Por ejemplo, la orientación .NET 1.1 no permitir el uso de medicamentos genéricos, y por lo tanto tendrás que utilizar el ArrayList que es considerablemente más lento que el de la Lista (debido a boxing y unboxing).

Otros consejos

Hay dos cosas para recordar en lo que respecta a la .NET 2.0 y .NET 3.5.

  1. El .NET Framework 3.5 es sólo un par de librerías que se ejecutan en la parte superior de .NET 2.0.
  2. Cuando en desarrollo en Visual Studio 2008 y la orientación .NET 2.0 usted puede todavía utilizar ciertas C# 3.0 características del lenguaje, tales como los Métodos de Extensión, ya que son, de hecho, una característica de C# 3.0 (o .NET 3.5) compilador.Ver en este enlace: http://www.codethinked.com/post/2008/02/Using-Extension-Methods-in-net-20.aspx

No he encontrado ninguna.Una obvia desventaja, si usted no necesita el 3.5 características específicas, es que el 3.5 código de la base de que es más joven y por lo tanto es posible, aunque poco probable, de que hay algunos errores al acecho.

No hay ningún beneficio para compilar el framework 3.5 si usted no está usando ninguna de las clases de que la versión del marco.

Supongo que debe significar la orientación de la .NET 3.5 framework para su compilación?Si es así, como otros han dicho, no creo que usted va a ver mucha diferencia.

Sin embargo, si usted está hablando sobre el uso de la actualización de los compiladores, a continuación, hay varios cambios y romper los cambios descritos para C# y VB en los siguientes enlaces:

Yo creo que un compilador diferente barcos con cada versión de Visual Studio.Por ejemplo, en el caso de C# 2.0 el compilador incluye con Visual Studio 2005 y C# 3.0 se incluye con Visual Studio 2008.Dependiendo de la versión de Visual Studio utiliza usted termina con un compilador diferente.

La orientación de un marco de trabajo se refiere específicamente a que la versión de que el marco deseo de destino durante el proceso de compilación;la orientación de los marcos es una nueva característica de Visual Studio 2008.Por ejemplo yo podría tener abierta una solución en Visual Studio 2008 y destino v2.0 de .Net.El resultado sería que yo no tendría ninguna de las 3.0 o 3.5 .Características de red disponible para mí durante la compilación, por ejemplo WPF.

Si su .NETO de la asamblea de los objetivos .NET 3.5, la aplicación resultante se buscan y requieren el .NET 3.5 bibliotecas, y punto.Estas bibliotecas vienen con numerosas adicionales clasificado que no se encuentran en el .NET framework 2.0, así que esa sería la ventaja a los dirigidos a las bibliotecas.

Sin embargo si usted compilar código C# con el de C# 3.0 compilador de envío, por ejemplo, conVisual Studio 2008 y adecuados .NET 3.5, pero tiene a su objetivo de la asamblea .NET 2.0, todavía sólo deberá regular .NET 2.0 a las bibliotecas, y a pesar de esta realidad, el uso de ciertos .NET 3.5 características del compilador, como un número de esas características sólo están haciendo uso de .NET 2.0 de código en la final.Leer más sobre esto aquí: http://weblogs.asp.net/shahar/archive/2008/01/23/use-c-3-features-from-c-2-and-net-2-0-code.aspx

3.5 clases que 2.0 no.Func<...> por ejemplo.Si tu objetivo para el 2.0, no se pueden utilizar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top