stringtranslate.com

subprograma

En informática , un subprograma es cualquier pequeña aplicación que realiza una tarea específica que se ejecuta dentro del alcance de un motor de widgets dedicado o de un programa más grande , a menudo como un complemento . [1] El término se utiliza con frecuencia para referirse a un subprograma de Java , un programa escrito en el lenguaje de programación Java que está diseñado para colocarse en una página web . Los applets son ejemplos típicos de aplicaciones transitorias y auxiliares que no monopolizan la atención del usuario. Los applets no son programas de aplicación con todas las funciones y están destinados a ser fácilmente accesibles.

Historia

La palabra subprograma se utilizó por primera vez en 1990 en PC Magazine . [2] Sin embargo, el concepto de subprograma, o más ampliamente, un pequeño programa interpretado descargado y ejecutado por el usuario, data al menos del RFC 5 (1969) de Jeff Rulifson , que describía el lenguaje Decode-Encode, que fue diseñado para Permitir el uso remoto del Sistema On-Line a través de ARPANET , mediante la descarga de pequeños programas para mejorar la interacción. [3] Esto ha sido acreditado específicamente como un precursor de los programas descargables de Java en RFC 2555. [4]

Applet como extensión de otro software

En algunos casos, un subprograma no se ejecuta de forma independiente. Estos subprogramas deben ejecutarse en un contenedor proporcionado por un programa anfitrión, a través de un complemento o una variedad de otras aplicaciones, incluidos dispositivos móviles que admitan el modelo de programación de subprogramas.

subprogramas basados ​​en web

Los applets se utilizaron para proporcionar funciones interactivas a aplicaciones web que históricamente no podían proporcionarse únicamente con HTML . Podían capturar la entrada del mouse y también tenían controles como botones o casillas de verificación . En respuesta a la acción del usuario, un subprograma podría cambiar el contenido gráfico proporcionado. Esto hizo que los applets fueran muy adecuados para la demostración, visualización y enseñanza. Había colecciones de subprogramas en línea para estudiar diversos temas, desde física hasta fisiología del corazón. Los applets también se utilizaron para crear colecciones de juegos en línea que permitían a los jugadores competir contra oponentes en vivo en tiempo real.

Un subprograma también podría ser sólo un área de texto y proporcionar, por ejemplo, una interfaz de línea de comandos multiplataforma para algún sistema remoto. Si es necesario, un subprograma podría abandonar el área dedicada y ejecutarse como una ventana separada . Sin embargo, los subprogramas tenían muy poco control sobre el contenido de la página web fuera del área dedicada al subprograma, por lo que eran menos útiles para mejorar la apariencia del sitio en general (aunque también se conocen subprogramas como tickers de noticias o editores WYSIWYG ). Los applets también podrían reproducir medios en formatos que el navegador no admite de forma nativa.

Las páginas HTML podrían incrustar parámetros que se pasaron al subprograma. Por lo tanto, el mismo subprograma podría aparecer de manera diferente dependiendo de los parámetros que se pasaron.

Ejemplos de subprogramas basados ​​en web incluyen: [ cita necesaria ]

Applet vs. subrutina

Una aplicación más grande distingue sus subprogramas a través de varias características: [ cita necesaria ]

subprogramas de Java

Un subprograma de Java es un programa Java que se inicia desde HTML y se ejecuta en un navegador web. Toma el código del servidor y lo ejecuta en un navegador web. Puede proporcionar aplicaciones web con características interactivas que HTML no puede proporcionar. Dado que el código de bytes de Java es independiente de la plataforma, los subprogramas de Java pueden ejecutarse mediante navegadores que se ejecutan en muchas plataformas, incluidas Windows , Unix , macOS y Linux . Cuando un navegador web con tecnología Java procesa una página que contiene un subprograma, el código del subprograma se transfiere al sistema del cliente y lo ejecuta la máquina virtual Java del navegador . [5] Una página HTML hace referencia a un subprograma ya sea a través de la etiqueta obsoleta o mediante su reemplazo, la etiqueta . [6]<applet><object>

Seguridad

Los recientes avances en la codificación de aplicaciones, incluidos sistemas móviles e integrados , han llevado a la concienciación sobre la seguridad de los subprogramas.

Subprogramas de plataforma abierta

Los applets en un entorno de plataforma abierta deberían proporcionar interacciones seguras entre diferentes aplicaciones. Se puede utilizar un enfoque compositivo para proporcionar seguridad a los subprogramas de plataforma abierta. [7] Se han desarrollado métodos avanzados de verificación de composición para interacciones seguras de subprogramas. [7]

subprogramas de Java

Un subprograma de Java contiene diferentes modelos de seguridad: seguridad de subprograma de Java sin firmar , seguridad de subprograma de Java firmado y seguridad de subprograma de Java autofirmado .

subprogramas basados ​​en web

En un navegador web compatible con subprogramas, se pueden utilizar muchos métodos para proporcionar seguridad a los subprogramas maliciosos. Un subprograma malicioso puede infectar un sistema informático de muchas maneras, incluida la denegación de servicio, la invasión de la privacidad y la molestia. [8] Una solución típica para los subprogramas maliciosos es hacer que el navegador web supervise las actividades de los subprogramas. Esto dará como resultado un navegador web que permitirá la detención manual o automática de subprogramas maliciosos. [8]

Ver también

Referencias

  1. ^ "AskOxford: subprograma", Diccionarios de Oxford. Consultado el 21 de julio de 2009.
  2. ^ "Diccionario de inglés Oxford". 2011 . Consultado el 23 de agosto de 2011 .
  3. ^ Rulifson, Jeff (2 de junio de 1969), "DEL", RFC 5 , Grupo de trabajo en red
  4. ^ Editor de RFC, et al. (7 de abril de 1999), "30 años de RFC", RFC 2555 , Grupo de trabajo en red
  5. ^ "Subprogramas". oracle.com . 5 de octubre de 2023 . Consultado el 5 de octubre de 2023 .
  6. ^ "Etiqueta de subprograma HTML", W3Schools. Acceso el 21 de julio de 2009
  7. ^ ab Barthe, Gilles; Gurov, Dilian; Huisman, Marieke (2002). "Verificación composicional de interacciones seguras de subprogramas". Enfoques fundamentales de la ingeniería de software . Apuntes de conferencias sobre informática. vol. 2306, págs. 15–32. CiteSeerX 10.1.1.16.1254 . doi :10.1007/3-540-45923-5_2. ISBN  978-3-540-43353-8.
  8. ^ ab Hassler, Vesna; Luego, Óliver (1998). "Controlar el comportamiento de los applets en un navegador". Actas de la 14ª Conferencia Anual sobre Aplicaciones de Seguridad Informática (Nº de catálogo 98EX217) . págs. 120-125. doi :10.1109/CSAC.1998.738594. ISBN 978-0-8186-8789-1. S2CID  17633591.

enlaces externos