0% encontró este documento útil (0 votos)
42 vistas8 páginas

Progra

La programación orientada a eventos se basa en el uso de eventos para controlar el flujo de un programa. En este enfoque, los eventos determinan qué código se ejecuta en respuesta a acciones del usuario u otros eventos. Esto ofrece ventajas como una mejor interactividad y flexibilidad, aunque también puede hacer que el flujo de control sea más complejo. Algunos ejemplos comunes son programas de procesamiento de texto, hojas de cálculo y sitios web.

Cargado por

Mari
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
42 vistas8 páginas

Progra

La programación orientada a eventos se basa en el uso de eventos para controlar el flujo de un programa. En este enfoque, los eventos determinan qué código se ejecuta en respuesta a acciones del usuario u otros eventos. Esto ofrece ventajas como una mejor interactividad y flexibilidad, aunque también puede hacer que el flujo de control sea más complejo. Algunos ejemplos comunes son programas de procesamiento de texto, hojas de cálculo y sitios web.

Cargado por

Mari
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

programación orientada a eventos

Programación orientada a eventos: características, ejemplos, ventajas, aplicaciones

La programación orientada a eventos se refiere a un modelo de la programación de

computadoras, donde se utilizan los eventos que suceden para la determinación del flujo

de control de un programa.

No es un tipo de tecnología o lenguaje de programación, sino un enfoque que se

implementa durante la etapa de desarrollo del producto. Básicamente, separa la lógica

de procesamiento de eventos del resto del código de un programa.

Este tipo de programación está diseñado para descubrir eventos mientras van

sucediendo, usando un procedimiento apropiado de manejo de eventos para tratarlos,

normalmente mediante una llamada a una función o método.

Teóricamente, el estilo de esta programación es compatible con todos los lenguajes de

programación, aunque puede ser diferente en la forma de implementarse.

En general, en una aplicación controlada por eventos hay un bucle principal que

“escucha” los nuevos eventos entrantes, activando una llamada a una función cuando

estos se detectan. Por tanto, su funcionamiento se enfoca en los eventos, decidiendo


estos qué ejecutar y en qué orden.

Características de la programación orientada a eventos

Dependencia de eventos

El flujo del programa viene dado por eventos que pueden ser acciones del usuario,

mensajes de otros programas, etc., separando la lógica de procesamiento de los eventos

del resto del código de un programa, contrastando así con el procesamiento por lotes.

Los eventos en sí pueden ser desde aceptar o rechazar una solicitud de préstamo,

denominado evento de alto nivel, hasta que un usuario presione una tecla, que es un

evento de bajo nivel.

Orientada al servicio

Se utiliza para escribir programas diseñados para el servicio sin ralentizar la

computadora, ya que la orientación al servicio solo consume poco poder de

procesamiento. Además, los servicios se ejecutan por lo general en el trasfondo del

sistema operativo.

Eventos

Es una condición que surge durante la ejecución de un programa y que requiere alguna

acción por parte del sistema. Cada evento es diferente por naturaleza, algunos requieren

que el programa recobre y muestre cierta información, y otros que se inicien algunos

cálculos y cambios de estado.

Los eventos incluyen al mouse, al teclado, una interfaz de usuario y las acciones que se

deben activar en el programa cuando ocurran. Esto significa que el usuario debe

interactuar con un objeto en el programa, como hacer clic en un botón del mouse, usar

el teclado para seleccionar un botón, etc.

Controlador de eventos

Es una determinada unidad del programa que se activa para reaccionar ante un evento.
Es decir, es un tipo de función o método que ejecuta una acción específica cuando se

activa un evento determinado.

Por ejemplo, podría ser un botón que cuando el usuario haga clic en él muestre un

mensaje y cuando vuelva a hacer clic en ese botón cierre el mensaje.

Funciones de activación

Son funciones que deciden qué código ejecutar cuando se produce un evento específico.

Se utilizan para seleccionar qué controlador de eventos emplear al producirse un evento.

Tiempo controlado

Es un código específico que se ejecuta en un momento determinado. Esto significa que

es una tarea preestablecida por hacer.

La actualización de Windows es un ejemplo de tiempo controlado, donde el usuario

puede establecer cuándo actualizar o cuándo verificar y descargar la actualización.

Ejemplos de programación orientada a eventos

Los programas orientados a eventos se han convertido en algo muy común. Entre los

ejemplos más notorios se encuentra el procesamiento de textos, herramientas de dibujo,

hojas de cálculo, etc.

La mayoría de los sistemas modernos de mensajería también siguen el patrón orientado

a eventos, mientras que los sitios web a gran escala usan arquitecturas escalables y

controladas por eventos de naturaleza distribuida. Otros ejemplos son:

– Se ha presionado una tecla (editor de texto).

– Un nuevo calendario de tareas está listo para ser distribuido a todo el personal

(sistema de gestión).

– Se ha recibido un mensaje HTML (servidor web).


– Se ha detectado un patrón de comercio ilegal (detección de fraude).

– Un automóvil en un juego de computadora choca con otro automóvil (juego de

carreras).

– Un robot ha llegado a su destino (gestión de almacén en tiempo real).

Permiso de trabajo

Un ejemplo práctico de un evento utilizado en la programación orientada a eventos

podría ser un empleado que solicita un permiso de trabajo en un sistema. Cuando este

empleado expide su solicitud activará una notificación que será enviada al gerente para

que la apruebe.

El gerente podría ver los detalles de la solicitud, aprobarla o rechazarla, actualizándose

en el sistema sin necesidad de iniciar sesiones adicionales.

Inicio de acciones

Las acciones de un programa que sigue los fundamentos de la programación orientada a

eventos se inician por eventos:

– Del hardware.

– Programados.

– De tiempo de ejecución.

– Del sistema operativo.

– Activados por instrucciones del usuario dadas a través de la interacción con la GUI del

programa.

En su modo más simple, los programadores tienen que responder la siguiente pregunta:
“¿qué debería suceder cuando ocurre un evento determinado?”.

La siguiente rutina de pseudocódigo muestra cómo podría funcionar un planificador muy

simple. Consiste de un bucle principal que se ejecuta continuamente hasta que se

produzca alguna condición de terminación.

Cuando se produce un evento, el planificador debe determinar el tipo de evento y

seleccionar un controlador de eventos apropiado, o manejar el evento si no existe un

controlador de eventos adecuado.

Ventajas

Procesamiento más rápido

Debido a la propagación de los datos entre múltiples procesadores y manejadores de

eventos.

Interactividad

Esta es la ventaja más importante de la programación orientada a eventos, mejorando la

experiencia del usuario. Los usuarios actuales quieren participar activamente y no

quedarse como consumidores pasivos.

Por tanto, los programas basados en eventos ayudan a los usuarios a navegar por su

propia experiencia y explorar una variedad de opciones, sin restricciones preestablecidas.

Menor codificación de decisiones


Este enfoque de programación posee numerosas ventajas para todos los interesados, ya

que se requieren codificar menos decisiones que las aplicaciones tradicionales.

Muchos eventos están determinados por las acciones del usuario, en lugar de tener una

codificación avanzada para todos los escenarios posibles. Mientras las aplicaciones

tradicionales actúan, las aplicaciones orientadas a eventos reaccionan.

Flexibilidad

Se adapta perfectamente a las tendencias recientes de ingeniería de software, como

computación en la nube, microservicios y la necesidad de una mejor escalabilidad con

sistemas flexibles y distribuidos.

Entradas válidas

Elimina la posibilidad de entradas con valores no válidos. Una aplicación tradicional hace

una pregunta y permite al usuario escribir una respuesta. Las aplicaciones orientadas a

eventos suelen ofrecer un conjunto de opciones, ya sea como botones o como menús

desplegables.

Fácil mantenimiento

Se elimina la necesidad de corregir y ajustar el código existente al agregar o quitar algún

módulo. El sistema continúa funcionando sin problemas, independientemente de

cualquier ajuste de este tipo.

Por tanto, esta programación es adecuada para aplicaciones con flujos de control

basados en un conjunto de eventos internos y externos, en lugar de basarse en una

estructura.

Desventajas

Flujo de control complejo

Este enfoque de programación no es la mejor opción para aplicaciones pequeñas y

sencillas, porque los esfuerzos que se deben realizar no resultan ser sensatos.
El desarrollo de una aplicación orientada a eventos aumenta la complejidad del diseño y

entrega del sistema. Esto se debe a que las arquitecturas tradicionales de software se

basan en interacciones basadas en solicitudes, en lugar de interacciones controladas por

eventos.

Además, se requiere también una gran cantidad de preparación debido a la necesidad de

bucles de eventos incesantemente dinámicos.

No reemplaza a la programación estructurada

Se debe tomar en cuenta que la programación orientada a eventos no reemplaza la

programación estructurada tradicional, sino que solo la complementa.

Las metodologías de programación tradicionales siguen siendo esenciales para escribir el

programa en general, mientras que los elementos de codificación manejados por eventos

solo sirven para ayudar a diseñar la GUI.

Flexibilidad

La flexibilidad de la programación orientada a eventos, que es su ventaja indiscutible,

también se convierte en un fraude en ciertos escenarios. Una de esas manifestaciones es

la imprevisibilidad de un programa orientado a eventos en caso que tenga cambios y un

control más débil sobre el sistema en general.

Aunque a los codificadores les gusta utilizar la programación orientada a eventos para

poder realizar ajustes sin fricciones, tales como la eliminación o la adición de algunos

módulos funcionales, estos ajustes pueden generar alteraciones no esperadas en la

funcionalidad.

En la programación convencional, el sistema descubre muy rápidamente estas anomalías

operativas, proporcionando un informe al programador sobre sus causas. En el entorno

de la programación orientada a eventos, la detección de tales disfunciones es menos

rápida y sencilla.
Aplicaciones

Ya que la programación orientada a eventos resulta ser más un enfoque que un tipo de

lenguaje, las aplicaciones que se basan en eventos pueden crearse en cualquier lenguaje

de programación.

La programación orientada a eventos está transformando el mundo de los servicios de

desarrollo de software y se está convirtiendo en parte integral del desarrollo actual. Su

difusión fue estimulada por Windows y la difusión de entornos visuales.

Un caso de una situación impulsada por un evento se parecería a un temporizador de

activación configurado para que haga una tarea específica en una hora determinada,

como sonar y comunicar algo que diga: “¡Despierta!”.

Interfaz gráfica de usuario

Este enfoque de programación se centra en eventos. Sus áreas de aplicación más

comunes incluyen la creación de la interfaz gráfica de usuario (GUI), aplicaciones del

servidor y el desarrollo de juegos para múltiples jugadores.

Mientras los programas convencionales establecen el flujo de los eventos y tienen el

control sobre las opciones del usuario, esta programación más innovadora sirvió para

crear la GUI.

La GUI cambió la interacción humano-computadora al ofrecer a los usuarios múltiples

opciones en forma de menús desplegables, ventanas, botones y casillas de verificación.

Por tanto, en lugar de seguir el orden predeterminado de acciones establecidas por la

computadora, los usuarios pueden elegir por su cuenta uno de los muchos comandos

disponibles.

Además de aplicarse ampliamente esta programación en las interfaces gráficas de

usuario, también en las aplicaciones que realizan ciertas acciones como respuesta a la

entrada del usuario, tales como aplicaciones web JJavaSc

También podría gustarte