6

Ok, sono un principiante in questo, ho cercato di studiare modelli MVC e modelli di pubblicazione/abbonamento in Javascript/jQuery, tuttavia credo che non ho afferrato il concetto interamente.PubSub/Motivi vagamente accoppiati e MVC in Javascript

Dal momento che ho fatto da solo, io vengo umilmente qui per chiedere il parere di un piccolo esercizio educativo che ho cercato di fare seguendo questi schemi

http://jsfiddle.net/Couto/R62V8/

Ok, l'esercizio è principalmente un modulo di login, dove i valori sono salvati in localStorage, di nuovo è puramente educativo, io ora non è sicuro in ogni caso e non dovrebbe essere usato in produzione.

Per favore, dimmi la tua opinione sui modelli utilizzati, non sono riuscito a ottenere il giusto uso dei modelli? Per favore feriscimi se necessario, voglio solo imparare, ma non sono sicuro se lo sto facendo bene.

+0

Penso che una domanda del genere sia probabilmente più adatta per http://codereview.stackexchange.com/ o http://programmers.stackexchange.com/. – Gijs

+0

Si potrebbe voler controllare 'backbone.js' –

+1

@Pablo Fernandez se si nota il mio esempio, ci sono parti del codice backbone.js ... ne ero a conoscenza;) – Couto

risposta

2

Il sistema di delega dell'evento di jQuery è di per sé una forma di pub/sub. In effetti, controlla questo, http://bugs.jquery.com/ticket/7547. Vedrai sotto il cofano che usa il sistema degli eventi e in realtà cambia solo lo schema di denominazione e funziona su un contesto "globale".

Non ho nulla contro pub/sub, ma sento che stai aggiungendo un livello che non ha bisogno di esistere in certi casi. Avrebbe attivato la funzione corretta immediatamente dopo l'attivazione della delega dell'evento piuttosto che l'attivazione di un pub? Se rimuovi la sottoscrizione e la pubblicazione verrai caricato quasi con lo stesso codice senza la "complessità" aggiunta.

In altri casi la pubblicazione/sottoscrizione ha molto senso. Il tuo display/hash e set/login hanno molto senso in quanto non fanno parte di un evento tradizionale a cui un altro codice potrebbe iscriversi/collegarsi.

Si potrebbe argomentare che utilizzando pub/sub ovunque, inclusa la delegazione di eventi, si stia allontanando la dipendenza dal codice esterno dal dover scrivere deleghe di eventi proprie, che rimuovono la loro preoccupazione su quale elemento obbligare il delegato a Se stai scrivendo applicazioni complesse, vai avanti e estrai fino a quel livello. Se non hai in programma di scrivere grandi applicazioni, valuta i vantaggi che potrebbero avere YAGNI in questo caso.

+1

ho fatto questa domanda molto tempo fa. Sono venuto per imparare la risposta da solo, mentre continuo a utilizzare il pattern MVC con pubsub ... In effetti hai ragione su quell'esempio (che non è il migliore in effetti). Comunque la tua risposta è abbastanza esplicativa. Grazie per il tuo tempo =) – Couto

Problemi correlati