2009-08-31 16 views

risposta

13

Event bubbling è l'idea di informazioni che si muovono attraverso una struttura profonda, quando la corretta progettazione impone che normalmente l'informazione dovrebbe scorrere solo verso il basso.

In termini molto semplici, pensare a un singolo oggetto. Progettato correttamente, questo oggetto dovrebbe conoscere solo i propri oggetti figlio. Non dovrebbe avere alcuna interazione diretta con il suo genitore. I suoi figli e gli oggetti genitori, a loro volta, dovrebbero seguire le stesse regole. In effetti, ciò significa che le informazioni possono solo scorrere verso il basso - un genitore può invocare un metodo, inviare dati o estrarre dati dal suo figlio, ma il bambino non può forzatamente fare lo stesso con il suo genitore.

Pensa a cosa succede quando soffi una bolla d'aria sott'acqua - non devi spingere l'aria verso la superficie - semplicemente la rilascia e si muove da sola. Lo stesso concetto si applica agli eventi che ribolliscono: i controlli più profondi semplicemente "rilasciano" le loro informazioni - di solito attraverso un evento - e "galleggia" lungo la catena senza invocare direttamente nulla.

Per quanto riguarda un sito Web come Stackoverflow (o praticamente qualsiasi tipo di sito), il concetto di bubbling è lo stesso. Ovviamente ogni singolo post non dovrebbe mettersi direttamente nella home page, ma quando un singolo post è stato aggiornato, quell'evento viene rilasciato dal punto più profondo della gerarchia - un singolo post - e si sposta fino al livello più alto, dove viene affrontato (scegliendo se visualizzare o meno nella home page).

+0

Risposta molto succinta. –

+1

@Kirk, è una * buona * risposta, ma penso che la tua definizione di succinto sia diversa dalla mia :-) Il succinto sarebbe "gli eventi o le risposte salgono alla cima senza sforzo, come le bolle d'aria nell'acqua". – paxdiablo

+0

@Kirk @Pax Stavo pensando la stessa cosa :) Apprezzo il complimento, ma vorrei anche che questa risposta fosse più breve. A volte mi trascino con le mie spiegazioni. –

3

Se stai chiedendo del termine, immagino sia un'analogia di un evento che "bolle" fino in cima, come fa una bolla d'aria in liquido.

Se stai chiedendo quale evento bolle è un evento che viene catturato da un oggetto che lo irradierà a qualsiasi altro oggetto che lo sta ascoltando.

Per citare un buon articolo here

... una tecnica chiamata bubbling degli eventi che permette un controllo figlio per propagare eventi la sua gerarchia di contenimento . Evento di bubbling consente eventi per essere sollevato da un posizione più comoda in controlli gerarchia e permette gestori di eventi a essere attaccati al controllo originale come così come al controllo che espone l'evento bollito.

Problemi correlati