En informática , un complemento (o complemento , complemento , complemento , complemento o complemento ) es un componente de software que agrega una característica específica a un programa informático existente . Cuando un programa admite complementos, habilita la personalización. [1]
Un tema o máscara es un paquete preestablecido que contiene detalles de apariencia gráfica adicionales o modificados, que se logra mediante el uso de una interfaz gráfica de usuario (GUI) que se puede aplicar a software y sitios web específicos para adaptarse al propósito, tema o gustos de diferentes usuarios para personalice la apariencia de una pieza de software de computadora o una interfaz gráfica de usuario de sistema operativo (y administradores de ventanas ).
Objeto y ejemplos
Las aplicaciones admiten complementos por muchas razones. Algunas de las principales razones incluyen:
- para permitir que los desarrolladores externos creen habilidades que amplíen una aplicación
- para admitir la adición fácil de nuevas funciones
- para reducir el tamaño de una aplicación
- para separar el código fuente de una aplicación debido a licencias de software incompatibles .
Tipos de aplicaciones y por qué utilizan complementos:
- Las estaciones de trabajo de audio digital y el software de edición de audio utilizan complementos de audio para generar, procesar o analizar el sonido. Ardor , Audacity , Cubase , FL Studio , Logic Pro X y Pro Tools son ejemplos de tales sistemas.
- Los clientes de correo electrónico utilizan complementos para descifrar y cifrar el correo electrónico. Pretty Good Privacy es un ejemplo de estos complementos.
- Los emuladores de consolas de videojuegos a menudo usan complementos para modularizar los subsistemas separados de los dispositivos que buscan emular. [2] [3] [4] [5] [6] [7] [8] [9] [10] Por ejemplo, el emulador PCSX2 hace uso de complementos de video, audio, ópticos, etc. para los respectivos componentes de la PlayStation 2 .
- El software de gráficos utiliza complementos para admitir formatos de archivo y procesar imágenes. ( cf complemento de Photoshop )
- Los reproductores multimedia utilizan complementos para admitir formatos de archivo y aplicar filtros. foobar2000 , GStreamer , Quintessential , VST , Winamp , XMMS son ejemplos de tales reproductores multimedia.
- Los rastreadores de paquetes utilizan complementos para decodificar formatos de paquetes. OmniPeek es un ejemplo de estos rastreadores de paquetes.
- Las aplicaciones de detección remota utilizan complementos para procesar datos de diferentes tipos de sensores; por ejemplo , Opticks .
- Los editores de texto y los entornos de desarrollo integrados utilizan complementos para admitir lenguajes de programación o mejorar el proceso de desarrollo, por ejemplo , los complementos de soporte Visual Studio , RAD Studio , Eclipse , IntelliJ IDEA , jEdit y MonoDevelop . El propio Visual Studio se puede conectar a otras aplicaciones a través de Visual Studio Tools para Office y Visual Studio Tools para aplicaciones .
- Los navegadores web han utilizado históricamente ejecutables como complementos, aunque ahora están en desuso en su mayoría . Los ejemplos incluyen Adobe Flash Player , una máquina virtual Java (para subprogramas Java ), QuickTime , Microsoft Silverlight y Unity Web Player . (Compare esto con las extensiones del navegador , que son un tipo separado de módulo instalable que todavía se usa ampliamente).
Mecanismo
La aplicación de host proporciona servicios que el complemento puede utilizar, incluida una forma de que los complementos se registren con la aplicación de host y un protocolo para el intercambio de datos con los complementos. Los complementos dependen de los servicios proporcionados por la aplicación host y, por lo general, no funcionan por sí mismos. Por el contrario, la aplicación de host funciona independientemente de los complementos, lo que permite a los usuarios finales agregar y actualizar complementos de forma dinámica sin necesidad de realizar cambios en la aplicación de host. [11] [12]
Los programadores suelen implementar la funcionalidad de complementos utilizando bibliotecas compartidas , que se cargan dinámicamente en tiempo de ejecución, instaladas en un lugar prescrito por la aplicación host. HyperCard admitía una función similar, pero más comúnmente incluía el código de complemento en los propios documentos de HyperCard (llamados pilas ). Por lo tanto, la pila HyperCard se convirtió en una aplicación autónoma por derecho propio, distribuible como una sola entidad que los usuarios finales podrían ejecutar sin la necesidad de pasos de instalación adicionales. Los programas también pueden implementar complementos cargando un directorio de archivos de script simples escritos en un lenguaje de script como Python o Lua .
Definición de Mozilla
En las definiciones de Mozilla Foundation , las palabras "complemento", " extensión " y "complemento" no son sinónimos. "Complemento" puede hacer referencia a cualquier cosa que amplíe las funciones de una aplicación de Mozilla. Las extensiones comprenden un subtipo, aunque es el más común y el más poderoso. Las aplicaciones de Mozilla vienen con administradores de complementos integrados que, al igual que los administradores de paquetes , instalan, actualizan y administran extensiones. Sin embargo, el término "complemento" se refiere estrictamente a los procesadores de contenido web basados en NPAPI . Mozilla desaprobó los complementos para sus productos. [13] Pero las aplicaciones basadas en UXP , como los navegadores web Pale Moon y Basilisk , siguen admitiendo complementos (NPAPI). [14] [15] [16]
Historia
Los complementos aparecieron ya a mediados de la década de 1970, cuando el editor de texto EDT que se ejecutaba en el sistema operativo Unisys VS / 9 utilizando las computadoras mainframe UNIVAC Serie 90 proporcionó la capacidad de ejecutar un programa desde el editor y permitir el acceso de dicho programa. el búfer del editor, lo que permite que un programa externo acceda a una sesión de edición en la memoria. [17] El programa de complemento podría realizar llamadas al editor para que realice servicios de edición de texto en el búfer que el editor compartió con el complemento. El compilador de Waterloo Fortran utilizó esta función para permitir la compilación interactiva de programas de Fortran editados por EDT.
Las primeras aplicaciones de software para PC que incorporaron la funcionalidad de complemento incluyeron HyperCard y QuarkXPress en Macintosh , ambas lanzadas en 1987. En 1988, Silicon Beach Software incluyó la funcionalidad de complemento en Digital Darkroom y SuperPaint , y Ed Bomke acuñó el término complemento. . [ cita requerida ]
Ver también
- Applet
- Extensión del navegador
Referencias
- ^ Sterne, Jonathan. "Complemento | software" . Enciclopedia Británica . Consultado el 5 de febrero de 2021 .
- ^ "PCSX2 - El emulador de Playstation 2 - Complementos" . pcsx2.net . Consultado el 10 de junio de 2018 .
- ^ Bernert, Pete. "Complementos de GPU PSX de Pete" . www.pbernert.com . Consultado el 10 de junio de 2018 .
- ^ Equipo, Demul. "DEMUL - Sega Dreamcast Emulator para Windows" . demul.emulation64.com . Consultado el 10 de junio de 2018 .
- ^ "Complemento de emulador de Android - Jenkins - Wiki de Jenkins" . wiki.jenkins.io . Consultado el 10 de junio de 2018 .
- ^ "Complementos de KDE / dolphin" . GitHub . Consultado el 10 de junio de 2018 .
- ^ "OpenEmu / SNES9x-Core" . GitHub . Consultado el 10 de junio de 2018 .
- ^ "Complementos N64 recomendados" . Wiki general de emulación . Consultado el 10 de junio de 2018 .
- ^ "¡Complementos y utilidades de Playstation!" . www.emulator-zone.com . Consultado el 10 de junio de 2018 .
- ^ "Aplicaciones / complementos / emuladores de PS3 Homebrew | PSX-Place" . www.psx-place.com . Consultado el 10 de junio de 2018 .
- ^ Complementos de Mozilla Firefox : descripción de la diferencia entre los complementos y extensiones de Mozilla Firefox bajo el término general complemento .
- ^ API de complemento de Wordpress : descripción de la arquitectura del complemento de Wordpress.
- ^ Paul, Ian. "Firefox dejará de admitir complementos a finales de 2016, siguiendo el ejemplo de Chrome" . PCWorld . IDG . Consultado el 20 de octubre de 2016 .
- ^ "Pale Moon: Detalles técnicos - Características" . Luna pálida . Consultado el 6 de junio de 2020 .
- ^ "Basilisco: características" . Basilisco . Consultado el 6 de junio de 2020 .
- ^ "Re: Recuerde: los complementos están desactualizados" . Foros de Pale Moon . Consultado el 6 de junio de 2020 .
- ^ Manual de referencia del editor de texto EDT , Cinnaminson, Nueva Jersey : Unisys Corporation , 1975