Pregunta

Cuando Java era joven, la gente estaba entusiasmada con escribir subprogramas.Fueron geniales y populares, por un tiempo.Ahora ya no los veo más.En su lugar, tenemos flash, javascript y una gran cantidad de otras tecnologías de creación de aplicaciones web.

¿Por qué los sitios ya no utilizan subprogramas de Java?

Yo también tengo curiosidad:Históricamente, ¿por qué crees que ocurrió esto?¿Qué se podría haber hecho diferente para mantener vivos los subprogramas de Java?

¿Fue útil?

Solución

Creo que los subprogramas de Java fueron eclipsados ​​por Flash y ActionScript (juego de palabras no intencionado), siendo mucho más fáciles de usar para los subprogramas de Java que se usaban en ese momento (animaciones + aplicaciones con estado).

El éxito de Flash en este sentido se debe a su vez a sus tamaños de archivo mucho más pequeños, además de beneficiarse de la ventaja Sun vs.Demanda de Microsoft que resultó en que Microsoft eliminara MSJVM de Internet Explorer, en un momento de desaparición de Netscape y fuerte dominio de IE.

Otros consejos

1) AWT creado para interfaces de usuario horribles.Swing mejoró en eso pero ya era demasiado tarde, porque...
2) Microsoft dejó de admitir Java en el navegador (su propietario MSJVM) y, antes de hacerlo, solo admitía la última versión que lanzó, que era aproximadamente compatible con JDK 1.1.
3) Por lo tanto, hoy en día no se puede estar seguro de que un subprograma se ejecutará en la mayoría de las máquinas que no son de desarrollo, a diferencia de flash.

Por cierto, lo mismo puede decirse de ActiveX.

Por si sirve de algo, Sun está invirtiendo dinero y recursos en applets nuevamente.Han realizado algunas mejoras realmente significativas en JDK 1.6.10 para mitigar gran parte de la "torpeza" que solían exhibir los applets.Por ejemplo, con esta actualización, puede mostrar su propia imagen/animación de carga personalizada mientras se carga el subprograma, y ​​el complemento se ha sometido a una dieta importante para mejorar el rendimiento.

También se han embarcado en una iniciativa para competir directamente con Flash y Silverlight. javafx.

Queda por ver si el mercado responderá o no a algo de esto, pero ciertamente es un movimiento fascinante por parte de Sun dado el dominio de Flash en el mercado.

Cuando la API GUI de Java dejó de ser una mierda, todo el mundo estaba usando Flash.E incluso hoy en día, Java no es tan bueno como Flash para crear gráficos sofisticados.

Supongo que es porque Java es "real", es decir.lenguaje de propósito general.Para crear un subprograma, debes escribir código y no hay atajos.

Ahora que ha aparecido el flash, etc., puedes simplemente arrastrar y soltar para crear una animación genial para tu sitio web.Esta es una barrera de entrada mucho más baja: no es necesario saber programar para que una animación flash funcione.Así que el flash prolifera y los subprogramas de Java ya casi no se utilizan.

Creo que los applets son un daño colateral en la batalla entre Microsoft y Sun.

Al principio, la JVM tardaba mucho en cargarse y exigía demasiada memoria.Luego, cuando el aumento de la potencia informática hizo posible la JVM, Sun se esforzó al intentar controlar todo lo relacionado con Java:

Como parte de otra demanda antimonopolio privada presentada contra Microsoft por Sun en marzo, Sun solicitó una orden judicial preliminar que exigiera a Microsoft incluir una máquina virtual Java (JVM) actual en el sistema operativo Windows XP.Microsoft dijo que la decisión de incluir la JVM esta semana es un resultado directo del último enredo legal con Sun, pero Microsoft planea disolver el soporte para Java en Windows a partir del 1 de enero.1, 2004. Microsoft cambia de rumbo e incluirá Java VM en Windows XP, por ahora

Tardaron una eternidad en cargarse y ponerse en marcha en el navegador, y luego, para mucha gente, no funcionaron.Cuando finalmente se cargaron, las interfaces eran feas y torpes.Creo que la mala experiencia del usuario fue un gran paso para hacer que los applets queden obsoletos.

Entonces, para responder a la pregunta original, tengo una pregunta propia: usted pregunta "¿Por qué los sitios ya no usan subprogramas de Java?", y mi respuesta es "¿por qué alguien querría hacerlo?"

Los veo mucho en entornos académicos (alojados en sitios de departamentos o facultades), pero tienes razón en que no son muy populares.

Sin embargo, recuerde que la gran promesa de Java se ha cumplido.Tenemos Flash, Java Applets, Silverlight y marcos de JavaScript en constante mejora.

Ahora bien, si agrego una opinión personal, creo que los subprogramas de Java no son elegantes.Suelen verse feos, el tiempo de ejecución de Java hace demasiado conocida su presencia en el sistema operativo (en términos de imágenes del tiempo de ejecución, actualizaciones y el feo instalador).Flash es mucho mejor con su entorno de medios enriquecidos y su implementación transparente (y ubicua).

La gente todavía usa subprogramas.Pero tienes razón, existen toneladas de soluciones diferentes.Por ejemplo, eche un vistazo a javafx

Creo que los problemas de compatibilidad fueron un gran problema.Más notablemente con IE y Java VM de Microsoft, que no cumplía con los estándares como podría haber sido.

Incluso con Sun JVM podrías tener problemas.Me divertí mucho cuando tuve dos subprogramas de terceros que requerían diferentes versiones de Java, lo que causa todo tipo de problemas.Sun ha intentado resolver este problema reemplazando los Applets con Inicio web de Java lo que le brinda un enlace en el navegador que inicia la aplicación en su propia ventana en lugar de dentro del navegador.(En teoría, con JWS puedes tener diferentes aplicaciones usando diferentes máquinas virtuales, pero nunca parece funcionar tan bien como debería).

Los avances con JavaScript también han hecho posible desarrollar páginas web mucho más ricas, por lo que muchas cosas que en el pasado solo se podían hacer en Applets ahora se pueden hacer simplemente con AJAX.

Primero, no se fueron.Todavía se pueden encontrar muchos subprogramas en la Web, mucha gente los usa particularmente para demostrar algoritmos y demás.
Ventajas:Puede aprovechar las bibliotecas existentes (matemáticas, física, clasificación, gráficos, etc.) y es más rápido que Flash.
Inconveniencia:Puede ser arriesgado apuntar a una JVM reciente (aunque Sun hizo un buen trabajo con las actualizaciones automáticas, parece que mucha gente ya está usando Java 1.6), el tiempo de carga es un poco lento (aunque se han logrado grandes avances allí).

También puedes encontrar muchos subprogramas de juegos, como Ratón de biblioteca, con la ventaja añadida, quizás, de tener ya parte del trabajo hecho para ejecutarlos en móviles...

En segundo lugar, puedo predecir una recuperación del interés por JavaFX.Los applets con esteroides, capaces de romper la leyenda de "los applets son feos"...:-)

Por último, una biblioteca como Procesando hace muy fácil crear subprogramas con uso intensivo de gráficos, y puedes encontrar muchos de ellos en la red, por ejemplo.en procesamiento abierto ¡Donde lo peor (principiantes en programación) está cerca de lo mejor!

Me pregunto qué tan extendida está realmente la JVM.En el caso de Flash, IE5 lo preinstaló, dándole una gran base de usuarios automáticos.Pero a menos que la JVM se incluyera con la instalación del sistema operativo, los usuarios no la tendrían.Supongo que, como desarrollador, su objetivo es la base de instalación más grande, lo que significa elegir Flash en lugar de Java.

Hay subprogramas de Java aquí y allá;Sin embargo, definitivamente no está muy extendido.

Creo que es su fealdad lo que los mantuvo alejados de la web moderna.flash trajo el diseño, javascript trajo una manera conveniente de hacer algunas cosas interesantes en un cliente.al ser una caja dentro de un navegador (como un flash, aunque mucho más feo), la tecnología de subprograma quedó descartada.

en realidad, lo único que se podría perder es la posibilidad de tener una comunicación del tipo 'cliente-servidor' dentro de la web, porque el subprograma de Java podría tener una conexión con estado.por otro lado, tendría que colocar algún servidor en el otro lado y abrirle un puerto, lo cual era demasiado trabajo doméstico para entornos de alojamiento compartido.

Los subprogramas todavía viven en algunas áreas diferentes, como centros de control de carreteras, túneles, plantas de energía y cosas así.

La gente todavía usa subprogramas, al menos para la empresa con la que trabajo.Los applets son utilizados principalmente por usuarios internos.

Siento que los applets tienen sus beneficios, ya que las empresas que emplean Java en el lado del servidor probablemente tendrán una gran reserva de talentos mejor capacitados en Java.

Aunque quizás otras tecnologías como Javascript, HTML/CSS o flash sean más populares o más extravagantes, el grupo de talentos podría aprovecharse mejor para crear aplicaciones web con subprogramas de Java, ya que es un lenguaje con el que ya están familiarizados gracias a su trabajo con el cosas del final del servidor.

Podría ser más rápido para el grupo de talentos de Java entregar una solicitud de cambio con soluciones de subprogramas de Java con mayor precisión que cualquier otra tecnología.

A veces, lo más importante en una solución tecnológica es su funcionalidad y la rapidez con la que las personas que necesitan brindarles soporte pueden reaccionar a los cambios.

La JVM está muy extendida, especialmente en el mundo corporativo, al menos donde yo he trabajado, siempre hubo una JVM instalada.

Actualmente estoy trabajando en un subprograma de Java, pero en general, nunca usaría un subprograma a menos que fuera necesario.Pero claro, tampoco usaría Flash ni Silverlight.Los applets tienen un tiempo de carga lento y parecen fuera de lugar en las páginas web.Además, Macromedia/Adobe han superado en el mercado a los viejos applets.

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