Programação orientada a eventos é um paradigma de programação. Diferente de programas tradicionais que seguem um fluxo de controle padronizado, o controle de fluxo de programas orientados a evento são guiados por indicações externas, chamadas eventos.[1] Sua aplicação é grande no desenvolvimento de sistemas de interface com o usuário.

A maioria das ferramentas e arquiteturas de desenvolvimento de GUI existentes depende de programação orientada a eventos. [2] A estrutura Java AWT processa todas as alterações na interface do usuário em um único thread, chamado de thread de despacho de eventos . Da mesma forma, todas as atualizações da interface do usuário na estrutura Java JavaFX ocorrem no JavaFX Application Thread.

Além disso, sistemas como o Node.js também são controlados por eventos.[2]

Visão geral

editar

Diferente de aguardar por um comando completo que processa a informação, o sistema em tal paradigma é programado em sua base em um laço de repetição de eventos, que recebem repetidamente informação para processar e disparam uma função de resposta de acordo com o evento.

O método pelo qual a informação é adquirida por camadas mais baixas do sistema é irrelevante. As entradas podem ser enfileiradas ou uma interrupção pode ser registrada para reagir, ou ainda ambos.

Programas orientados a evento geralmente consistem em vários pequenos tratadores, programas que processam os eventos para produzir respostas, e um disparador, que invoca os pequenos tratadores. Uma alternativa consiste em disparar os tratadores por eles próprios, criando um efeito de evento em cascata.

Esse método é bastante flexível e permite um sistema assíncrono. Programas com interface com o usuário geralmente utilizam tal paradigma. Sistemas operacionais também são outro exemplo de programas que utilizam programação orientada a eventos, este em dois níveis. No nível mais baixo encontram-se o tratamento de interrupções como tratadores de eventos de hardware, com a CPU realizando o papel de disparador. No nível mais alto encontram-se os processos sendo disparados novamente pelo sistema operacional.

Um interpretador de comandos pode ser visto como um caso especial de modelo orientado a eventos, no qual o sistema, até então inativo, espera um comando para ser disparado através das instruções do usuário.

Referências

  1. Samek, Miro (1 de abril de 2013). «Who Moved My State?». Dr. Dobb's. Consultado em 28 de janeiro de 2018 
  2. Node.js & Event-driven programming.
  • Grant Palmer: Java Event Handling, Prentice Hall, ISBN 0-13-041802-1
  • David Luckham: The Power of Events - An Introduction to Complex Event Processing in Distributed Enterprise Systems, Addison-Wesley, ISBN 0-201-72789-7
  • George S. Fishman: Discrete-Event Simulation - Modeling, Programming, and Analysis, Springer, ISBN 0-387-95160-1
  • Bertrand Meyer (2004): The power of abstraction, reuse and simplicity: an object-oriented library for event-driven design, in Festschrift in Honor of Ole-Johan Dahl, eds. Olaf Owe et al., Springer-Verlag, Lecture Notes in Computer Science 2635, also available online.
  • Miro Samek: Practical Statecharts in C/C++: Quantum Programming for Embedded Systems, CMP Books, ISBN 1-57820-

Ligações externas

editar

📚 Artikel Terkait di Wikipedia

Controvérsia sobre alimentos geneticamente modificados

de outubro de 2013  «European Scientists Ask for GMO Research». Food Processing (em inglês). 7 de novembro de 2013. Consultado em 19 de dezembro de 2025

Google

de fevereiro de 2010  Schonfeld, Erick (9 de janeiro de 2008). «Google Processing 20,000 Terabytes A Day, And Growing». TechCrunch. Consultado em 16 de

Perturbação de estresse pós-traumático complexo

O transtorno de estresse pós-traumático complexo (TEPT-C) ou perturbação de stress pós-traumático (PSPT-C) é um transtorno psicológico e físico que pode

Cromatografia gasosa bidimensional abrangente GC×GC

então a GC×GC vem sendo extensivamente aplicada para solucionar problemas complexos de separações. Alguns dos grupos de pesquisa mais bem consolidados no

Modelos de linguagem de grande escala

Martin, James H. (2023). Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition

Cannabis (psicotrópico)

{delta}9-tetrahydrocannabinol and Cannabidiol on Neural Activation during Emotional Processing. Archives of General Psychiatry. [S.l.: s.n.] 10.1001. Consultado em 18

Neurociência da música

Uppenkamp, Stefan; Johnsrude, Ingrid S; Griffiths, Timothy D (2002). «The Processing of Temporal Pitch and Melody Information in Auditory Cortex». Neuron.

Consciência situacional

». In: Simon, Herbert A.; Klahr, David; Kotovsky, Kenneth. Complex information processing: the impact of Herbert A. Simon (em inglês). Hillsdale, N.J: