Menú de navegaciónMenú
Categorías

La mejor forma de Aprender Programación online y en español www.campusmvp.es

?id=b917d5af-023f-4282-9ccf-216ffb58c4d2

5 mitos de .NET que todavía te crees (20 años después)

.NET lleva ya más de 20 años entre nosotros. Y eso sin contar todo el tiempo que estuvo en beta antes de que lo lanzaran. A pesar de todo este tiempo, todavía persisten un montón de mitos e ideas equivocadas sobre esta tecnología que mucha gente se sigue creyendo y que no son ciertas.

Hoy te voy a desmontar los 5 mitos más importantes.

¡Vamos allá!

Por cierto, también tienes el contenido de este post en formato vídeo:

MITO 1: .NET es solo para Windows

Vale. Esto nunca ha sido cierto del todo, pero hay que reconocer que al principio Microsoft hacía lo posible para que fuese así. Teníamos el proyecto Mono, de Miguel de Icaza, que era Open Source y funcionaba en Linux y Mac, pero nunca llegó a despegar y Microsoft no quería ni oír hablar de él.

Sin embargo, desde el año 2016, y desde .NET Core, ahora .NET a secas, la plataforma .NET es completamente multi-sistema operativo, de forma oficial y soportada por Microsoft. Sin "cosas raras".

Puedes crear aplicaciones para Windows, Linux, macOS, iOS, Android, XBox y otras consolas, para la nube... Y además puedes programar desde Windows, Linux y macOS, incluyendo los nuevos sistemas operativos de la manzana con los nuevos procesadores M1 de arquitectura ARM.

Si haces una aplicación web no necesitas usar Internet Information Server y puedes ponerla a andar desde cualquier sistema operativo y con cualquier servidor de aplicaciones. Y por supuesto, incluso desde contenedores.

Vamos, que si lo tuyo es Linux, por ejemplo, puedes hacer absolutamente todo sin abandonar este sistema: desarrollo, pruebas, despliegue continuo y puesta en producción. En todas las etapas puedes evitar tocar Windows.

MITO 2: Hay que pagar por usarlo para programar

Este es otro mito persistente que viene de los primeros tiempos, cuando Visual Studio costaba miles de euros...

Hace ya muchísimos años que existen versiones gratuitas de Visual Studio, que además no tienen grandes limitaciones, pero es que en realidad ni siquiera necesitas un IDE para desarrollar: puedes hacerlo con un simple bloc de notas y la línea de comandos, en cualquier sistema operativo.

De todos modos no sobran opciones de entornos para desarrollar: tienes Visual Studio para Windows y para Mac, y Visual Studio Code que es un editor fantástico, en muchos aspectos del día a día mejor incluso que Visual Studio, y que funciona en Windows, Linux y macOS y es 100% gratuito y Open Source. Aparte de eso existe un excelente editor de JetBrains llamado Rider que merece mucho la pena y que también tiene opciones gratuitas.

En definitiva: en este aspecto .NET está en igualdad de condiciones o incluso mejor que cualquier otra plataforma.

MITO 3: Es de código cerrado

Nuevamente otro mito que viene del inicio de los tiempos. Y es que Steve Ballmer a pesar de su developers, developers, developers, hizo mucho daño al mundo del desarrollo Microsoft.

A ver: .NET es de código abierto y desde 2015 tiene todo el código en GitHub y todo el desarrollo se realiza en abierto .

Y no sólo el núcleo: todos los sub-frameworks que existen son también de código abierto: ASP.NET, Entity Framework, .NET MAUI, etc...

Incluso si Microsoft dejase de desarrollar .NET, podrías mañana mismo seguir por tu cuenta y nunca te quedarás tirado.

De todos modos no solo llega que la plataforma sea Open Source. Tanto o más importante es la disponibilidad de código abierto de terceros: librerías, componentes, aplicaciones enteras... Existe un ecosistema con miles y miles de proyectos open source serios y profesionales de código abierto para cualquier necesidad que te pueda surgir, y podrás acelerar tu desarrollo usándolos. Generalmente los tendrás en forma de paquetes NuGet que te permiten gestionar muy bien las dependencias, consumirlos y actualizarlos.

MITO 4: Tiene poco rendimiento

Este mito viene de los tiempos de las primeras versiones de ASP.NET, y ha envejecido mal. Muy mal.

De hecho, lo solían comparar con Node.js y su famoso Event Loop y compilación Just In Time de V8, etc...

La realidad es que en la actualidad los datos demuestran que .NET es una de las plataformas con mayor rendimiento del mundo, incluso cuando la comparas frente a plataformas específicamente diseñadas para obtener un alto rendimiento. No olvidemos que .NET es una plataforma de uso general...

Si vas a los benchmarks de rendimiento TechEmPower, donde todos están compitiendo, verás que ASP.NET está en el puesto 8. Lo que tienes por encima son frameworks específicos para obtener alto rendimiento en aplicaciones web, y que son más limitados en cuanto a las capacidades de la plataforma. Están escritos en C++, Go y Rust, aparte de uno escrito en JavaScript (pero que NO tiene nada que ver con Node.js) y otro escrito en Java.

Si quitamos esas cosas raras y dejamos solo .NET y Node.js: "se lo come con patatas":

Resultados del benchmark entre .NET y Node.js

No sólo el framework de Microsoft sino otros creados sobre éste, como los dos que lo siguen en los puestos 2º y 3º. En el caso de Express, que es lo que usa la mayor parte de los desarrolladores de Node.js, .NET "pelado" tiene casi 8 veces más rendimiento.

Y esto era con .NET 5, pues el último benchmark disponible en estos momentos es de antes de que saliera .NET 6. .NET 6 mejora el rendimiento todavía más en muchas cosas por lo que es probable que en el próximo benchmark suba más.

MITO 5: Está anclado en el pasado

Nunca se habían creado tantos lenguajes nuevos como en los últimos años: Swift, Rust, Go, Elixir, Dart, Kotlin...

Por eso alguna gente piensa que, como .NET tiene más de 20 años, está obsoleto. O más en concreto, que su lenguaje principal (C#) lo está.

O sea, que por esa regla de tres Java, que tiene más de 30 años o C++ que tiene casi 40, lo están también.

No solo no es cierto que sea obsoleto, sino que C# ha liderado muchos avances que otros lenguajes han intentado copiar o han implementado mucho más tarde, por ejemplo: los tipos parciales, tipos anulables, clases estáticas puras, tipos anónimos o los métodos de consulta integrados en el lenguaje (que seguro que conoces como LINQ) y que fueron una revolución en su momento.

Y esto solo por mencionar cosas de hace muchos años. De hecho hay muchas otras que son imitaciones o mejoras de cosas que existían en otros lenguajes anteriores, pero no en lenguajes "mainstream", sino más bien experimentales o de uso muy limitado. Muchas de estas cosas no las tiene ninguno de los lenguajes de moda que a los alpha geeks les gusta mencionar.

Hoy en día sacan una versión nueva cada año, todas añaden cosas nuevas y algunas muy innovadoras.

Y además hay muy pocas plataformas que te permitan crear prácticamente cualquier tipo de aplicación sin salirte de su órbita: desde aplicaciones de escritorio, hasta juegos de alto rendimiento, pasando por aplicaciones móviles, desarrollos web, servicios de backend, etc...

En resumen

En este rato hemos repasado los 5 principales mitos que todavía perduran sobre la plataforma .NET y, como has podido comprobar, ninguno de ellos es cierto. Así que si tenías dudas sobre si apostar por la plataforma y aprender .NET, espero habértelas despejado.

Y si no tenías dudas, espero al menos haberte ayudado a descubrir algún dato interesante sobre .NET que no supieses 😉

José Manuel Alarcón Fundador de campusMVP, es ingeniero industrial y especialista en consultoría de empresa. Ha escrito diversos libros, habiendo publicado hasta la fecha cientos de artículos sobre informática e ingeniería en publicaciones especializadas. Microsoft lo ha reconocido como MVP (Most Valuable Professional) en desarrollo web desde el año 2004 hasta la actualidad. Puedes seguirlo en Twitter en @jm_alarcon o leer sus blog técnico o personal. Ver todos los posts de José Manuel Alarcón
Archivado en: Lenguajes y plataformas

¿Te ha gustado este post?
Pues espera a ver nuestro boletín mensual...

Suscríbete a la newsletter

La mejor formación online para desarrolladores como tú

Agregar comentario

Los datos anteriores se utilizarán exclusivamente para permitirte hacer el comentario y, si lo seleccionas, notificarte de nuevos comentarios en este artículo, pero no se procesarán ni se utilizarán para ningún otro propósito. Lee nuestra política de privacidad.