Tema: Java vs .NET
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/01/2015, 16:14
agleiva
(Desactivado)
 
Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 9 años, 3 meses
Puntos: 52
Respuesta: Java vs .NET

Hola.

Sin animo de ofender, esa publicacion es de hace 4 años atras.

Hoy por hoy, la mayoria de los problemas de los que hace "mofa" acerca de .Net han dejado de existir:

- La plataforma casi en su totalidad es open source (con licencia apache 2.0)
- Este año Microsoft lanzará oficialmente la version sobre Unix de .Net Core.
- Esto ultimo significa que la "mochila" de componentes viejos como COM y OLE han sido desacoplados del resto del framework, ya que no existen en Unix.
- ASP.Net fue desarrollado desde cero para desacoplarse de IIS y poder funcionar en Unix.
- El Web Server que se utiliza con la version nueva de ASP.Net es conocido como "K" y esta basado en Libuv (el mismo que utiliza Node.js)
- Los compiladores de C# y VB.Net fueron desarrollados de cero como una "plataforma" para exponer APIs de facil utilizacion.
- F# esta ganando popularidad y esta mucho mas orientado a la "comunidad".
- Muchas librerias que antes solo existian en la JVM hoy por hoy tienen su contraparte en el CLR (por ejemplo Akka.Net).
- C# como lenguaje sigue evolucionando y proporcionando mucha comodidad y ventajas en la productividad a la hora de escribir codigo. Es indudable que es muchisimo mejor lenguaje que java.
- Microsoft colabora con terceros como Unity y Xamarin/Mono para mejorar el soporte de .Net sobre plataformas no-Windows (Android, iOS, Unix)
- El .Net Framework fue "repensado" y hecho mucho mas modular usando Nuget para minimizar el tamaño de las aplicaciones tanto en disco como en memoria.
- Visual Studio ahora es gratuito para equipos de menos de 5 personas, para desarrolladores independientes y para estudiantes. Para desarrollo enterprise sigue siendo pago, pero dudo mucho que esto sea un problema para una empresa grande.
- El projecto OmniSharp (totalmente desarrollado por la comunidad) permite el uso de plugins para los editores mas conocidos en Linux (VIM, Emacs, Sublime, Atom) para escribir codigo C#, con soporte para Intellisense y syntax highlight.
- El ecosistema entero ahora favorece la instalacion automatizada de dependencias, poniendose a la par de Linux en este sentido. Chocolatey provee una plataforma muy similar a apt-get en Windows, y Nuget provee una plataforma de resolucion de dependencias para los proyectos .Net
- Etc Etc Etc ahora no me acuerdo.



Mientras tanto, java sigue debatiendose como hacer para arreglar los generics (que todo el mundo sabe que estan rotos / mal hechos) y como implementar value types, los cuales estan en .Net desde 2005 (hace 10 años).
Y oracle sigue haciendole juicio a google por la implementacion de java en Android, lo cual daña a todo el ecosistema y no beneficia a nadie, excepto el bolsillo del propio oracle. Por esta razon java 8 todavia no es oficialmente soportado en Android, y es probable que pase un buen tiempo antes de eso.

Sinceramente no creo que los programadores java tengan demasiado argumento para mofarse de los programadores .Net.

Scala es otra cosa, por supuesto, que esta mas al nivel de F# que de C#.

Sin animo de ofender, saludos

Última edición por agleiva; 22/01/2015 a las 16:28