Citar
Aparte de que las aplicaciones de NET corren mas lenta que en C/C++/Delphi, etc...
Si y no. Ciertamente por definicion, una aplicacion C++ es mas rapida que una aplicacion hecha en .net. Esto es porque al compilar una aplicacion .net, esta se compila a un lenguaje intermedio (MSIL), y luego el CLR, en tiempo de ejecucion, "traduce" el MSIL al lenguaje de maquina.
Ahora bien... el MSIL y el CLR estan tan bien optimizados que la diferencia entre C++ y .net muchas veces se reduce al buen uso que de un programador del lenguaje.
Me explico: Un algoritmo eficiente en C#, puede ser mas rapido que un algoritmo pobremente creado en C++.
Que hay diferencia? Claro que la hay. Pero programando de forma eficiente, esas diferencias son simplemente minusculas. Claro esta, si hablas de aplicaciones de mision critica en tiempo real, C++ es C++, eso no entra en discucion.
Citar
el programador tiene que estar constantemente actualizando su programas amenudo salen nuevas versiones
Simplemente NO es cierto. En el 2003 yo realize una aplicacion que procesa unos archivos que nos llegan atravez de un frame relay.... y adivina que? Esa aplicacion fue compilada por ultima vez el 12 de diciembre del 2003. Y adivina donde la tengo corriendo?? Windows server 2008. Y para los fines, tambien funciona con Mono 2.4 en linux SIN recompilar.
Lo de que tienes que tener instalado el framework!? Cierto. Ahora bien... cuantas maquinas has visto estos dias que no tengan instalado Framework 2.0??
Por el hecho de que .net 4 ya este afuera, no tienes que actualizarte. Si lo que buscas es la mayor compatibilidad, te quedas con .net 2.0 y listo.
Es como ubuntu: Ubuntu es compilado para la arquitectura 386 en vez de la 686. Porque? porque si bien es menos optimizado, es mucho mas compatible.