Ho creato una web-app con una GUI abbastanza complessa - molti piccoli elementi a fianco e all'interno di altri elementi che richiedono vari comportamenti (trascinamento, clic, ma sensibile al contesto).
Il mio codice tende a funzionare in questo modo:
I controlliiniziano come tag html
<li>
quindi aggiungo le classi al tag
<li class = 'static passive included'>
alcune classi potrebbero essere per lo stile css per influenzare l'aspetto
.static {background: blue; float: left;}
mentre altri vengono interpretati da jQuery per fornire un comportamento per gli eventi DOM associati
$("#container").delegate(".passive", function {onclick : //do-stuff})
e altri potrebbero essere rilevati da normali javascript durante la scansione del documento, ad es. raccogliere i valori di testo di tutti i nodi con la classe "inclusa". Quindi alcuni elementi DOM sono oggetti GUI che implementano le classi difese attraverso una combinazione di css e jQuery.
La mia domanda è, è un buon modo di lavorare? E anche questi sono davvero 'decoratori' - certamente 'aggiungono ulteriori responsabilità a un oggetto dinamicamente' ma non sono sicuro di quel termine. Finalmente, usi questo modello nei tuoi siti?