stringtranslate.com

Escribe una vez, corre a cualquier parte

Write once, run anywhere ( WORA ), o a veces Write once, run everybody ( WORE ), fue un eslogan de 1995 [1] creado por Sun Microsystems para ilustrar los beneficios multiplataforma del lenguaje Java . [2] [3] Idealmente, esto significaba que un programa Java podía desarrollarse en cualquier dispositivo, compilarse en un bytecode estándar y esperarse que se ejecutara en cualquier dispositivo equipado con una máquina virtual Java (JVM). La instalación de una JVM o un intérprete Java en chips, dispositivos o paquetes de software se convirtió en una práctica estándar de la industria.

Un programador podría desarrollar código en una PC y esperar que se ejecute en teléfonos móviles con Java habilitado , así como en enrutadores y mainframes equipados con Java, sin necesidad de realizar ajustes. Esto tenía como objetivo ahorrarles a los desarrolladores de software el esfuerzo de escribir una versión diferente de su software para cada plataforma o sistema operativo en el que pretendían implementarlo.

Esta idea se originó a más tardar en la década de 1960, con el IBM M44/44X , y a finales de la década de 1970 se desarrolló el sistema UCSD Pascal para producir e interpretar código p . UCSD Pascal (junto con la máquina virtual Smalltalk) fue una influencia clave en el diseño de la JVM, como cita James Gosling . [ cita requerida ]

El problema es que, dado que existen múltiples implementaciones de JVM, además de una amplia variedad de sistemas operativos diferentes, podría haber diferencias sutiles en cómo se ejecuta un programa en cada combinación de JVM/OS, lo que posiblemente requiera que se pruebe una aplicación en cada plataforma de destino. Esto dio lugar a una broma entre los desarrolladores de Java: Write Once, Debug Everywhere (Escribir una vez, depurar en todas partes ) . [4]

En comparación, el lenguaje y entorno de programación Squeak Smalltalk se jacta de poder escribirse una vez y ejecutarse en cualquier lugar, [5] porque ejecuta imágenes idénticas en bits en toda su amplia base de portabilidad. [6]

Al igual que Squeak, MicroEJ proporciona un entorno de ejecución virtual que garantiza una política de subprocesos Java única en todas las implementaciones, lo que asegura una verdadera semántica WORA en millones de dispositivos.

Véase también

Referencias

  1. ^ "¿Escribes una vez y ejecutas en cualquier lugar?". ComputerWeekly.com . Consultado el 5 de octubre de 2022 .
  2. ^ "JavaSoft lanza Java 1.0". Sun Microsystems. 23 de enero de 1996. Archivado desde el original el 10 de marzo de 2007. La capacidad de Java de escribir una vez y ejecutar en todas partes junto con su fácil accesibilidad han impulsado a las comunidades de software e Internet a adoptarlo como el estándar de facto para escribir aplicaciones para redes complejas.
  3. ^ "¿Escribes una vez y ejecutas en cualquier lugar?". Computer Weekly . 2002-05-02 . Consultado el 2009-07-27 .
  4. ^ Wong, William (2002-05-27). "Write Once, Debug Everywhere" (Escribir una vez, depurar en todas partes). electronicdesign.com . Consultado el 2013-02-04 . Hasta ahora, la promesa de Java de "Escribir una vez, ejecutar en todas partes" no se ha hecho realidad. La mayor parte de una aplicación Java migrará entre la mayoría de las implementaciones de Java, pero aprovechar una característica específica de la máquina virtual causa problemas de portabilidad.
  5. ^ "Bienvenido a Squeak". Squeak . Consultado el 5 de mayo de 2015 .
  6. ^ "Regreso al futuro. La historia de Squeak, una charla práctica escrita en sí misma". Dan Ingalls Ted Kaehler John Maloney Scott Wallace Alan Kay . Consultado el 5 de mayo de 2015 .