UTNianos

Versión completa: Java vs .NET versión 2011. Dónde está parado cada uno?
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Java arranco siendo un lenguaje tremendo y bastante "revolucionario". Vale la pena aclarar que tiene ya mas de 15 años. .NET, como suele hacer Microsoft, llego despues pero (a mi criterio) le paso el trapo ampliamente. La idea de tener un framework atras que te permita compilar codigo en muchisimos lenguajes y te lo convierta a algo comun es increible.

Que piensan muchachos? yo creo que es un tema polemico... Java y el mundo open source? o Microsoft y el mundo privativo (pero mucho mas sencillo)?
y mira, yo con .net en el laburo esta bastante copado, y eso que solo vi muy poco.. blush
pero usar linQ y que te arme las consultas para sql esta barbaro, no me imagino si te hace conversiones a otros lenguajes !
¿Que se está discutiendo?¿ El lenguaje? ¿ La maquina virtual ?

Cita:La idea de tener un framework atras que te permita compilar codigo en muchisimos lenguajes y te lo convierta a algo comun es increible.

Java tiene como lenguajes pesados:
- Java,
- Groovy (actualmente, es un lenguaje oficializado por la JSR 241)
- Jython,
- Scala,
al igual que tiene muchos mas, como Noop, JRuby, y una larga lista... En mi experiencia personal, he visto que se utiliza BOCHA groovy (y actualmente, lo utilizo para un par de cosas de testing con web services, via SoapUI).


.NET tiene como lenguajes pesados:
C#
VB .NET
F#

...... y al menos bajo mi punto de vista, los lenguajes que usan .NET no son conocidos, hasta que Microsoft no se preocupa en fomentarlos (entonces, conozco muy poca gente que haya utilizado IronPython, por ejemplo). Es mas, hasta son discriminados por la misma comunidad (como es con los de VB . NET).


A lo que voy es que la idea de tener un framework atras no es exclusiva de .NET. Solo es que Microsoft lo usó primero como estrategia de marketing.


Si tengo que elegir entre los dos mundos, me quedo con java, por ser Open Source(*), y por brindarte una gama enorme de herramientas distintas para hacer lo que quieras (cosa que no he visto en la gente de .NET, que generalmente tienen todo el pack de productos microsoft: Windows 7 + VisualStudio + TFS + Silverligth + Sharepoint + IIS + IE + SQL Server + .... ) y que te hacen parir si decidis no usar uno de ellos (He visto gente putear bastante, porque X wizard o X aplicación no le funciona bien cuando intenta NO usar X cosa de microsoft). Es mas, hasta creo en mi laburo hubo problemas porque el utlimo Visual Studio te exigia que tengas Windows 7....



Ahora, si exclusivamente vemos el leguaje Java 1.6 vs el lenguaje C#, si, C# tiene muchisimos chiches mas.... los cuales gran parte ya están en Java 7.

(*) Talvez sea desconocimiento, o que era mas grande cuando comencé a usar Java... pero con .NET, nunca pude meterme a un IRC a preguntar cosas sobre porqué no me funciona tal cosa..... cosa que con Java, he realizado muchisimas veces.
Podemos incluir Asp .Net, se usa mucho hoy por hoy
Dale M$.

Ultimamante hay una creciente comunidad Open Source en el mundo de .NET. Sino, chequeen codeplex.
.Net tiene el beneficio de afanarse las cosas de Java que anduvieron bien y obviar las chotas (diseño de UIs anyone?). La desventaja es la portabilidad , pero mono va a mejorar (ya banca asp.net MVC 2 completamente).
Y viceversa. Expresiones lambda, cof!, cof!
Hay sintaxis de la implementación Java de expresiones lambda que no me agrada.

Por otro lado, .NET implementó los Generics de verdad, cosa que Java para mantener la backward compatibility con su framework de Collections no hizo. Y por eso podés meter un Object en un List<Clase1> esquivando el compilador, porque en el fondo sigue siendo una List de objects (al menos hasta la 1.5/1.6) ¬¬. De cualquier forma algunas restricciones de Generics de Java no están en .NET (parte de los wildcards)
Adriano, espero que lo de "revolucionario" en Java sea a nivel comercial, porque si no tendré que hablar seriamente con quien haya sido tu docente de Paradigmas =P


Estemmm... .Net no usé nada aún, y no me molestaría en nada que siga así eso... (aunque creo que para el TP de gestión tengo que usar C# o algo así)

Hace un año estoy laburando en Java, y mi opinión es que es un lenguaje bastante choto, pero que tiene una comunidad que se la recontra rebusca para hacer que tenga sentido y termine siendo algo potable. Osea, agarrá Java, y apesta... Agarrá Java, sumale Eclipse, Apache * (hicieron TODO los muy hijos de puta... no se cómo carajo hacen =)), Maven, y otras cosas por el estilo, y tenés algo usable... No es Smalltalk (lamentablemente), pero es usable...


<opinología>En .Net no creo que haya una comunidad tan grande, que provea tantas soluciones y blah, y que funcione tan bien...

Y hablar de OpenSource y Microsoft al mismo tiempo es una joda, delen...

No se... A Java lo puteo a diario, y me parece bastante choto el lenguaje en sí, pero creo que lo prefiero antes que .Net... Por ahí con más conocimiento de causa pueda cambiar la opinión, pero bue...</opinologia>
(29-04-2011 19:19)LeandroDG escribió: [ -> ]Por otro lado, .NET implementó los Generics de verdad, cosa que Java para mantener la backward compatibility con su framework de Collections no hizo. Y por eso podés meter un Object en un List<Clase1> esquivando el compilador, porque en el fondo sigue siendo una List de objects (al menos hasta la 1.5/1.6) ¬¬. De cualquier forma algunas restricciones de Generics de Java no están en .NET (parte de los wildcards)
Que patada en las bolas eso , un Jr te puede hacer desastres.
URLs de referencia