No conozco C# y solo he visto ejemplos de código, pero puedo revocarte algunas cosas:
En java si hay enums, tarde, quizás, pero los hay.
Las estructuras no ofrecen ninguna ventaja sobre las clase, al menos, yo no se las veo. Supongo que me puedes aclarar este punto.
Las funciones no existen en java. Se llaman métodos. Si de verdad quieres utilizar punteros a métodos en java, puedes realizar algo parecido con java.lang.
Me parece correcto "abolir" el uso de punteros a funciones en lenguajes OO. Para eso, se inventó la
herencia y el polimorfismo.
En cuanto a leer cadenas del teclado... pues no se como se hace... hace años que no utilizo eso. Pero recuerdo que era complejo, cierto. Pero ¿hoy en día, quien lee cadenas de teclado en un programa?
Luego está el eterno tema de la velocidad. Bueno, java no es lento, eso es una falacia, beneficiada por la deficiente maquina virtual de Microsoft.
Java puede ser tan rápido como para que una base de datos potente corra sobre ella (HSQLDB), como para actuar facilmente de servidor de aplicaciones (TOMCAT,JBOSS) y hay mastodontes que utilizan java como Eclipse. Porque haber, que IDE como Eclipse tienes en C#?.
Yo hasta ahora, en Mono no he visto una aplicación con una interfaz gráfica medianamente compleja, y sobre todo, multimplata forma, porque las windowsforms en *nix y gtk en windows, solo es pasable. Has probado gcj con libglade para java, haber si es rápido o lento?
Eso si, Swing es lento, sobre todo cargando es un infierno, aceptado.
Y finalmente, confío en que Harmony sea la solución al problema de la completa libertad de java, problema que Mono tendrá muy dificil resolver, pues Sun puede tener unos objetivos similares a Microsoft, pero ha demostrado que sus caminos son otros.
Re:Yo no uso Java.
(Puntos:2, Interesante)En java si hay enums, tarde, quizás, pero los hay.
Las estructuras no ofrecen ninguna ventaja sobre las clase, al menos, yo no se las veo. Supongo que me puedes aclarar este punto.
Las funciones no existen en java. Se llaman métodos. Si de verdad quieres utilizar punteros a métodos en java, puedes realizar algo parecido con java.lang. Me parece correcto "abolir" el uso de punteros a funciones en lenguajes OO. Para eso, se inventó la herencia y el polimorfismo.
En cuanto a leer cadenas del teclado... pues no se como se hace... hace años que no utilizo eso. Pero recuerdo que era complejo, cierto. Pero ¿hoy en día, quien lee cadenas de teclado en un programa?
Luego está el eterno tema de la velocidad. Bueno, java no es lento, eso es una falacia, beneficiada por la deficiente maquina virtual de Microsoft. Java puede ser tan rápido como para que una base de datos potente corra sobre ella (HSQLDB), como para actuar facilmente de servidor de aplicaciones (TOMCAT,JBOSS) y hay mastodontes que utilizan java como Eclipse. Porque haber, que IDE como Eclipse tienes en C#?.
Yo hasta ahora, en Mono no he visto una aplicación con una interfaz gráfica medianamente compleja, y sobre todo, multimplata forma, porque las windowsforms en *nix y gtk en windows, solo es pasable. Has probado gcj con libglade para java, haber si es rápido o lento? Eso si, Swing es lento, sobre todo cargando es un infierno, aceptado.
Y finalmente, confío en que Harmony sea la solución al problema de la completa libertad de java, problema que Mono tendrá muy dificil resolver, pues Sun puede tener unos objetivos similares a Microsoft, pero ha demostrado que sus caminos son otros.