JavaFX ya está disponible:¿Los Applets y Java Desktop están oficialmente muertos o agonizantes?[cerrado]

StackOverflow https://stackoverflow.com/questions/377593

  •  22-08-2019
  •  | 
  •  

Pregunta

javafx ya está disponible y hay promesas de que Swing mejorará junto con JavaFX.Atrás quedarán los días de la fea interfaz de usuario predeterminada y, por fin, podremos crear aplicaciones atractivas que sean comparables a Flash, aire y Silverlight en términos de calidad.

  1. ¿Significará esto que Subprogramas de Java ¿Esos granizos de la década de 1990 están muertos y no vale la pena volver a ellos?

  2. Lo mismo con Escritorio Java:¿Qué nos convencerá a los desarrolladores de Java de usarlo en lugar de JavaFX?

¿Fue útil?

Solución

En mi opinión, los applets de Java han estado muertos durante años. Escribí algunos a finales de los 90, un juego de Tetris durante una pasantía para demostrar en un cuadro de bellota de 40MHz ARM, por ejemplo. Por supuesto, apuesto a que todavía hay algunos sitios de juegos casuales que tienen toneladas de ellas y, por lo tanto, seguirá siendo compatible, pero el desarrollo activo será/ha disminuido.

Java Web Start es una tecnología útil en mi opinión. Eso seguirá funcionando con Javafx, es solo otra biblioteca para ese sistema.

Javafx brindará a Java oportunidades más allá de las herramientas técnicas (como SQL Developer), aplicaciones comerciales interiores y aplicaciones de servidores (donde sobresale). Creo que es una de esas bibliotecas que vale la pena aprender para cualquier desarrollador de Java, si pueden pasar el tiempo. No se argumenta que las bibliotecas de interfaz de usuario para Java han sido muy carecidas o demasiado complejas durante muchos años.

Sin embargo, hay mucha competencia, y es muy nuevo (lo que significa que el soporte de la herramienta de desarrollo es muy crudo, en comparación con Flash y Silverlight). Además, a la gente no le gusta descargar entornos de tiempo de ejecución masivos, ¡aunque la banda ancha lo hace menos doloroso que hace 5 años para muchos!

Otros consejos

Creo que esta discusión es algo engañosa. No soy fanático de la tecnología de applet (y Javafx me he decepcionado. Pero el punto de que falta este hilo es que, a menos que esté equivocado, Javafx está construido sobre la tecnología de applet. No son competidores o mutuamente excluyentes. Ver estos artículos aquí y aquí.

Podría ser que la confusión sea algo intencional por parte del Sol, ya que no quieren que Javafx y los applets se mencionen en la misma oración, ya que los applets tenían tantos problemas.

Los applets de Java no están muertos.

Tenían una mala historia, por varias razones:

  • La mayoría de las plataformas tenían complementos de navegador malos para los 90 completos, que se mudaron a la década de 2000, y esto le dio a los applets (y Java, hasta cierto punto) una reputación de la lentitud y las grandes descargas.
  • La plataforma de applet real creó una nueva VM para cada applet, lo que creó aún más la lentitud, especialmente en el inicio de un applet.
  • Muchos desarrolladores de applets no eran conscientes de minimizar el tamaño de los frascos que empujaron hacia abajo, creando aún más la impresión de la lentitud.

Las mejoras que traen Javafx también traen mejoras al applet (son uno y lo mismo). Las máquinas virtuales se pueden compartir y el almacenamiento en caché es mejor que antes. Además, el ancho de banda de usuario promedio más alto puede ayudar incluso a las implementaciones de appletes mal diseñados de inicio rápidamente. Si mira a lo largo de los ejes de la base de instalación y la potencia de la plataforma, el applet sigue siendo bastante alto, si no la parte superior, en mi opinión.

Javafx es genial, pero requiere un tiempo de ejecución adicional, y para muchas partes es solo azúcar sintáctica en la parte superior de la plataforma de applet. Casi cualquier problema que los applets tienen hoy son compartidos por Javafx por este motivo

Los applets de Java murieron no por el concepto de un applet, sino Porque el complemento JRE para navegadores web era abisal.

De hecho, Flash demostró que hay un papel para el contenido interactivo en línea.

Javafx es una nueva forma de programar aplicaciones ricas en Internet, esencialmente equivalente a los applets de Java o al contenido flash. El nuevo JRE Runtime (1.6.0_10, también conocido como "Actualización 10") incluye muchas características que hacen que ejecutar Java en el contexto de un navegador sea mucho más sabroso.

Javafx! = Java Desktop. Los dos son bastante diferentes, y cada uno tiene un lugar en la caja de herramientas de un desarrollador.

En realidad, los applets de Java son una buena tecnología que podría haber sido tan omnipresente como Flash, si solo Sun no perdiera la guerra de relaciones públicas y tecnología con Microsoft.

Microsoft estaba presionando los controles de DirectX a la vez, y aprovechando la participación de mercado de IE contra los applets. Recuerdo haber hecho algunos puntos de referencia: Java Applet de 3 MB (que era grande), cargado del disco local (para tomar tiempos de carga de red fuera de la ecuación), tardó alrededor de 5 segundos en comenzar en la ópera. El mismo applet de alguna manera tardó aproximadamente 2 minutos en comenzar en IE.

Entonces, no fue esa tecnología apestada; No era que los applets fueran lentos porque eran demasiado grandes; Eran lentos porque el navegador dominante en ese momento los hizo lentos deliberadamente. :)

Supongo que Javafx es el intento de Sun de revivir muchas ideas de los applets, en un momento diferente y en un mercado diferente.

Aunque esto eventualmente podría ser cierto, actualmente Javafx carece de controles, no hay dispositivos móviles soportan y otras lagunas que lo hacen "aún no está allí"

  1. ¿Significará esto que los applets de Java que provienen de 1990 están muertos y no vale la pena volver?

Javafx y los cambios asociados son un intento de revitalizar el espacio del applet: los applets siempre estaban perseguidos por las malas implementaciones de complementos y los puentes Flakeu`y en el navegador. Eso se ha mejorado, aunque todavía necesita más trabajo, pero por fin Sun ha reconocido que necesitaba trabajo y ha hecho algo al respecto. Los applets están mejor posicionados de lo que nunca han estado. De la competencia que menciona, Flash, Air y Silverlight, creo que se perdió el competidor clave, el navegador/JavaScript, los fabricantes de navegadores también están abordando las debilidades clave de la plataforma: el rendimiento de JavaScript, la capacidad de hacer dibujo arbitrario (IE Canvas, etc.) . Para los requisitos de gama baja, creo que un enfoque de navegador de juego puro se ganará, para gráficos de gama alta, Javafx tiene una oportunidad.

  1. Lo mismo con Java Desktop: ¿Qué será convincente para que los desarrolladores de Java lo usen en lugar de Javafx?

Como un gran desarrollador de aplicaciones de escritorio Java, ¡una de las cosas que falta es un conjunto decente de widgets básicos y el tiempo de jugar! Necesita una implementación de la mesa asesina: puede incrustar el swing, pero un poco es el punto. Ahora podría escribir el mío por eso no es realmente donde estoy agregando valor en mi tipo de trabajo.

1 - ¿Significará esto que los applets de Java que provienen de la década de 1990 están muertos y no vale la pena volver a ellos? Con la actualización del complemento Java, todos los subprogramas, no solo los basados ​​en JavaFX, obtienen una experiencia de usuario y un rendimiento mejorados.Dicho esto, no creo que haya muchos (si es que hay alguno) subprogramas asesinos por ahí.Si lo hubiera, JavaFX nunca habría sido necesario.

2 - Lo mismo con Java Desktop:¿Qué nos convencerá a los desarrolladores de Java de usarlo en lugar de JavaFX?Si está creando aplicaciones GUI y desea ejecutarlas en Java, en particular en múltiples plataformas (p. ej.escritorio, applets y dispositivos móviles), además de facilitar el trabajo con alguien que tenga conocimientos reales de Photoshop/GIMP: JavaFX es su mejor opción porque fue diseñado explícitamente para ese tipo de proceso.Sin embargo, recuerde que JavaFX puede llamar al código Java y también puede realizar llamadas remotas (ya sea recuperando XML o JSON).Creo que el punto de integración más probable será utilizar JavaFX para la interfaz de usuario y el almacenamiento en caché de los resultados, pero toda la lógica de codificación pesada estará en el servidor.Donde se puede escribir en Java o .NET o ensamblador si puede hacer que su ensamblador emita XML o JSON :).

Estoy de acuerdo con los demás, los applets de Java ya murieron. Javafx podría llenar ese vacío. Sin embargo, simplemente no lo veo reemplazar el escritorio de Java en el corto plazo. Es lo mismo que decir que las aplicaciones web reemplazarán todas las aplicaciones de escritorio. Algunas personas creen que, y estoy de acuerdo en que las aplicaciones web crecerán en popularidad, sin embargo, las aplicaciones de escritorio continuarán teniendo un lugar por un tiempo.

No podemos escribir fácilmente los applets, ya que hay demasiados código bueno en una web. Mucho de esto fue escrito por personas que no son especialistas en el desarrollo de software, sino que son especialistas en varias áreas de alta gama que intentaron explicar e ilustrar con la ayuda de los applets de Java, la tecnología superior en ese momento. Es posible que no tengan tiempo para aprender un nuevo idioma y reescribir el que trabajan. Muchos no están activos durante años.

También veo los applets de Java como más apropiados para proyectos comunitarios que se basan en las compilaciones del lado del servidor y la revisión del código. Varias herramientas elegantes para los usuarios pueden hacer que el desarrollo de los componentes web sea rápido y fácil, pero el resultado no es legible por humanos ni muy difícil de revisar.

Hemos lanzado recientemente el Ultrastudio.org Proyecto que todavía se basa en la tecnología Java Applet. Estaba pensando mucho en poner más idiomas y plataformas, pero al final me vi obligado a concluir que es menos seguro o de lo contrario más complejo de hacer.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top