Existen bastantes dudas entre la gente que no se dedica a programar (en especial en .NET)sobre las versiones de .NET Framework. Desde el punto de vista de un usuario final o de un profesional de las TI que no desarrolla software, ¿qué versiones instalar y cuáles no? ¿Se actualizan las versiones anteriores o se instalan de forma paralela? Este artículo dará respuesta a estas preguntas.
¿De qué se compone .NET?
El punto de partida para aclarar el caos que existe con las versiones de .NET es comprender exactamente cuáles son los dos componentes principales de .NET: Por un lado está el CLR (Common Language Runtime) y por otro el Framework, o conjunto de librerías que proporcionan funcionalidades a los programadores de aplicaciones. Existe un tercer componente, el lenguaje de programación (C# o VB.NET), que no vamos a tratar en este artículo.
El núcleo de .NET Framework es el CLR, y es el componente que se encarga entre otras cosas de traducir el código gestionado (IL), generado por el compilador, en código adaptado a la máquina de destino (por ejemplo, x86). La clave está en el número de versión del CLR es independiente de la versión de .NET Framework; o dicho de otra manera, una nueva versión de .NET Framework no necesariamente incorpora una nueva versión del CLR. Este punto es el que confunde a mucha gente. Históricamente, las versiones de .NET (sin contar Service Packs intermedios) han sido la 1.0, 1.1, 2.0, 3.0, 3.5 y 4.0, disponible desde hace poco tiempo. Hasta la versión 2.0, cada nueva versión de .NET Framework ha incorporado una nueva versión del CLR. Sin embargo, las versiones 3.0 y 3.5 siguen usando la versión 2.0 del CLR. Estas dos versiones solo han consistido en la adición de nuevas librerías, manteniéndose el mismo núcleo de .NET. ¿Por qué ha elegido Microsoft denominarlas con un nuevo número de versión? Realmente lo desconozco, quizá sea un aspecto de marketing.
.NET Framework en su versión 4.0 introdujo la versión 4.0 de las librerías y además incorporó una nueva versión del CLR, la 4.0. Esta tabla resume toda esta información:
Versión del CLR |
Versión de .NET |
Incorporado de serie en |
1.0 |
1.0 |
Ningún sistema |
1.1 |
1.1 |
Ningún sistema |
2.0 |
2.0 |
Windows Vista y Windows Server 2008* |
2.0 |
3.0 |
Windows Vista y Windows Server 2008 |
2.0 |
3.5 |
Windows 7 y Windows Server 2008 R2** |
4.0 |
4.0 |
Ningún sistema |
* Incorpora la versión 2.0 SP2 como requisito de la versión 3.0.
** Incorpora la versión 3.5 SP1.
(No ha habido una versión 3.0 del CLR).
Las versiones instaladas de .NET están en el directorio C:\Windows\Microsoft.NET\Framework, dentro de la subcarpeta correspondiente a su número de versión. Podrá comprobar que algunas versiones, como la 3.0 o 3.5, no incorporan una nueva versión del fichero Mscorlib.dll, que implementa el núcleo de .NET.
¿Se pueden instalar varias versiones en un mismo equipo? ¿Se actualizan automáticamente las versiones anteriores?
Podemos tener instaladas varias versiones de .NET Framework. La versión 3.0, por ejemplo, requiere tener instalada la versión 2.0 para añadirle unas cuantas librerías más. Lo mismo ocurre con la versión 3.5. No es necesario instalarlas gradualmente, cada instalación incorpora todos los componentes necesarios. Por lo general, si un programa requiere una versión específica de .NET, la instalará automáticamente, o bien le indicará al usuario de dónde tiene que bajarla e instalarla. No hay ningún problema por tener instaladas varias versiones de .NET en un mismo equipo, estas se ejecutan “side-by-side”, impidiendo que ocurran conflictos. La práctica totalidad de aplicaciones diseñadas para .NET Framework 1.0, 1.1, 2.0, 3.0 ó 3.5 van a funcionar sin problemas en .NET Framework 4.0.
Este es un resumen del “caos” de versiones de .NET Framework, que trae de cabeza a muchos usuarios finales que no saben exáctamente qué versión instalar. Si el sistema operativo es superior a Windows XP, el usuario probablemente no va a tener que preocuparse de instalar nada, pues estos sistemas ya incorporan de serie una versión de .NET Framework. En estos casos, lo único que hay que hacer es mantenerla actualizada. En el caso de que aparezca una nueva versión del motor CLR de .NET, al instalarla se mantendrán las versiones anteriores que pudiera haber en el equipo; no es necesario desinstalarlas. En casos como las versiones 3.0 y 3.5 esto incluso no es posible hacerlo puesto que dependen del motor de la versión 2.0 para funcionar. Otro caso en el que no es posible la desinstalación es si la versión de .NET venía incorporada de serie con el sistema operativo (tercera columna de la tabla anterior).
Gracias por la informacion Daniel.
Por ahora entiendo que podria dejar instalada la version 4.0 y no tener que preocuparme de instalar ninguna de las anteriores, cierto?
Saludos
@Mych: Sí, además dependendiendo de tu versión de Windows es posible que tengas instalada de serie una versión anterior (fíjate en la tabla del artículo).
En cualquier caso, si algún programa instalara alguna versión antigua, no hay ningún tipo de problema y además Windows Update se encargará de que todas las versiones se mantengan al día.
Olle y como hago para tener el .NET Framework 1.1 en mi windows 7.
Lo que pasa es que lo nesecito para un programa seria de mucha ayuda tu respuesta.
Te dejo mi msn:
gome.zalan@hotmail.com
Gracias, Porfavor nesecito tu ayuda
Muchas gracias por puntual informacion… pero sigo teniendo dudas al respecto…. para ser franco.. no se cuales son las versiones que debo tener en mi windows XP Pro… no quiero tener mas ni actualizar si no es necesario… solo deseo saber el numero de version que SI DEBEN ESTAR y que no se puede presindir de ellos… cuales son? tengo instaladas o mejor dicho estan instaladas las versiones 1.1 la 2.0 SP2 la 3.0 SP2 la 3.5 SP1 y la 4.0 Client Profile y la 4.0 Extended .. solo quiero que mi computadora funciones bien… por favor.. que alguien me ayudeeeeeeeeeeee AUXILIOOOOO
@Arturin: Depende de cada usuario. Ten en cuenta que Windows XP no incorpora de serie ninguna versión de .NET Framework, así que imprescindible no es. Si instalas alguna aplicación que lo requiera, te enlazará al sitio web de Microsoft para que puedas descargar esa versión en concreto.
hola, yo tengo instalado la version NET Framework 1.1 en windows XP profesional
y quisiera saber si se puede dejar instalada la version 4.0 y no la 2.0, 3.5
quisiera saber si el NET Framework 4.0 engloba las versiones antiguas como la 2.0, 3.5
HOLA:TENGO LA VERSION 3.0, PERO NO ME APARECE COMO INSTALADA EN PANEL DE CONTROL- AGREGAR O QUITAR PROGRAMAS.
EL PROBLEMA ES QUE AL INICIO DE WINDOWS ME APARECE UN MENSAJE DE ATI, DICIENDO QUE:
NO PUEDO CARGAR EL ARCHIVO MOM.Implementation,
para lo que en la web de ATI dice que necesito
el NET FRAMEWORK 3.0, PARA SOLUCIONAR ESTE ERROR ANTERIOR (MOM).
COMO HAGO PARA INSTALAR LA 3.0, NO PUEDO. CORREGIRÁ EL ERROR ?????
GRACIAS
Hola, tengo un problema muuuuy molesto, es el siguiente… Al instalar un programa (Autodesk inventor u otro), me dice que no se puede finalizar la descarga, que se necesita Microsoft Net Framework, descargué un programa que se llama MICROSOFT NET FRAMEWORK DETECT, y me dice que
No tengo la version Framework 1.0 ni la versión Framework 1.1
Pero si tengo Framework 2.0 , 3.0 , 3.5
También tengo: WCF , WPF , WF y Card Space
Pero al descargar una versión de Framework 1.0 me aparece lo siguiente:
“el servidor windows installer no puede instalar la revision de actualizacion…”
El windows update también me vota errores:
Error: 800B0001
Error: 80070003
Me pueden ayudar con el tema?
Agradezco todo tipo de ayuda…
Saludos
muchas gracias por la información la verdad es que tenia un lio con el tema de las versiones.
Estimado, tengo un inconveniente. Por tema de vulnerabilidades en mi servidor debo desistalar la versión 1. Es posible esto? Osea solo mantener la 2?
Gracias por tu respuesta.