Assumi la seguente situazione simile a quella di Stack Overflow: ho un sistema con un front-end che può eseguire varie manipolazioni sui dati (inviando messaggi al back-end REST):
- pubblicazione
- Modifica ed eliminazione
- Aggiunta di etichette e tag
Ora, nella prima versione, l'abbiamo creato ben modulare, ma ora abbiamo bisogno di "evolvere" il sistema in modo simile a Stack Overflow. La mia domanda è il modo migliore per separare la comunanza e come incorporare la variabilità rispetto a quanto segue:
Comunanza:
- Le "funzionalità" di cui sopra e invio / ricezione dei dati dal server
- Guarda e senti (anche una variabilità come spiegato di seguito)
- Verbi HTTP associati alle azioni sopra
Variabilità:
- Gli URL RESTful in cui vengono inviate le richieste
- Il testo / stile dell'interfaccia utente (la comunanza è analoga a Stack Overflow - la funzionalità degli upvotes, la pubblicazione di una domanda rimane la stessa, ma le parole, le icone, l'aspetto e la sensazione sono ancora diversi tra i siti)
Penso che questo sia interamente un problema di refactoring / organizzazione del codice lato client. Utilizzo intensamente jQuery, javascript e backbone per lo sviluppo front-end.
La mia domanda è: quanto dovrei isolare allo stesso modo per essere in grado di creare più aspetti di questo tipo sullo strumento su cui stiamo lavorando attualmente?