Si entiendo tu pregunta, esto se hace fácilmente. Incluso volviendo a MS-DOS en PC, había una técnica popular para crear pequeñas aplicaciones emergentes que involucraban lo que se conocía como un programa de “terminar (y) permanecer residente” (TSR). En resumen, este fue un programa que ejecutó que instaló un “gancho” de interrupción de teclas, o más raramente, un gancho de conexión de comunicación, que observó una combinación de teclas (u otro evento) y, cuando se detectó ese evento, transfirió el control a un programa separado u otra parte del programa instalador que contuviera una pequeña herramienta de visualización emergente para realizar una tarea específica (como una calculadora, un bloc de notas, mini hojas de cálculo, listas de contactos, etc.). El programa de instalación principal pareció finalizar (el control se transfirió nuevamente al usuario en el indicador de MS-DOS) y el usuario pudo ejecutar otros programas. Pero el programa permaneció en la memoria, de ahí el nombre de “terminar (y) permanecer residente”, esperando las teclas correctas para activarlo.
Había un nicho de mercado de buen tamaño para las herramientas TSR para todo tipo de “mini aplicaciones” que podían aparecer cuando se ejecutaban otros programas. ¿Necesita una calculadora mientras está en un procesador de textos? Aquí hay una calculadora TSR que muestra una ventana emergente de la calculadora cuando presiona “Control-Shift-C”. Necesita una lista de contactos que pueda usar mientras está en Lotus 1-2-3, aquí hay un TSR que aparece en esa ventana de programa cuando presiona “Windows-L”. Escribir estos programas fue fácil: podían ser muy pequeños (debían serlo, en realidad dadas restricciones en la arquitectura de MS-DOS que admitía TSR) y se crearon cientos de paquetes comerciales y shareware para cada uso concebible de miniaplicaciones. Para los usuarios de MS-DOS, esto fue lo más cercano a la multitarea cooperativa hasta que se introdujo Windows.
En el lado de Mac y UNIX, tales capacidades se integraron en el sistema operativo. El LISA (predecesor de la GUI de Apple para Mac) tenía varias “utilidades de escritorio” que se abrían simultáneamente con otras aplicaciones. Por supuesto, todo esto se había implementado durante mucho tiempo en otros sistemas operativos multitarea e incluso en sistemas GUI como los prototipos Star y Smalltalk en Xerox PARC (donde Apple vio muchos de estos en una famosa visita de demostración).
- ¿Cuáles son las ventajas y desventajas de ser ingeniero de software?
- ¿Cómo es un día típico para el ingeniero de software en Mindtree?
- ¿Cuáles son las habilidades, el conocimiento y la experiencia necesarios para ser un gran ingeniero de software de back-end?
- ¿Cómo son las entrevistas de trabajo para ingenieros de software?
- En un equipo de desarrolladores, ¿cuánto nivel de abstracción de código es saludable para el equipo y los futuros miembros del equipo?
En pocas palabras, por supuesto, puede crear utilidades emergentes en PC / Mac. Con Linux, Windows y OS X, la escritura es simple: mucho depende de lo que desee como evento de activación (combinación de teclas, evento de comunicación externa o interna, control de temporizador, etc.) y el modo de visualización de diálogo emergente (modal, en parte superior de otras ventanas abiertas y requiere acción antes de que el usuario pueda continuar con otras aplicaciones; no modal, pero permite que otras aplicaciones continúen siendo utilizadas mientras todavía se muestra la ventana emergente; se puede minimizar o mover al “fondo” en el escritorio; etc.). Las características del sistema operativo multitarea de los sistemas modernos hacen que tales herramientas no sean significativamente diferentes o más difíciles de crear que cualquier otro programa.