Introduzione al Perl Object Environment (POE)/2

L’articolo che segue è la seconda e ultima parte di questa introduzione al Perl Object Environment. La prima parte è disponibile a questo link.

Wheel e componenti

La prima classe di oggetti che possono aiutare a sviluppare più rapidamente le nostre applicazioni con POE sono chiamate Wheel. Si tratta di insiemi di event handler, che possono essere iniettati all’interno di una sessione per istruirla a reagire ad un più ampio insieme di stimoli senza dover faticare troppo. Un esempio semplice da seguire é quello che adopera la classe POE::Wheel::FollowTail. Si tratta di una wheel che aiuta a creare applicazioni che, come il comando UNIX tail, seguono l’evolversi di un file specificato.

[Read more…]

Introduzione al Perl Object Environment (POE)/1

Se vi siete sempre cimentati con script di shell, applicazioni web o semplici CGI — e questa è una sorte comune a molti programmatori Perl — allora siete probabilmente abituati a concepire i vostri programmi come una sequenza di operazioni che avvengono l’una dopo l’altra in maniera lineare, o al più pilotate dallo stato del sistema e dall’input fornito al programma.

Ci sono però tanti casi in cui un simile approccio non va bene: ad esempio tutto l’insieme delle applicazioni GUI, che devono essere reattive alle azioni dell’utente, e per le quali di conseguenza non è possibile individuare a priori una sequenza di operazioni da svolgere: l’impredicibilità dell’agire dell’utente, e la quantità di attori che devono modificare il proprio stato in base ad esse, impedisce — o rende molto difficile — usare il medesimo approccio che normalmente governa i programmi tradizionali. Altra categoria che può trarre beneficio da un approccio ad eventi è quella dei software che devono implementare protocolli di comunicazione con agenti esterni, come quelli di networking.

[Read more…]