Come strutturare un app un back-end e un front-end Multipli

3

Ho una grande sfida da risolvere dove ho alcune idee ma non so quale sarebbe la soluzione migliore.

Fondamentalmente devo sviluppare un'applicazione in cui devo sviluppare un front-end back-end (servizio web) e Multipli. Il nucleo di tutte le applicazioni sarà lo stesso, stesse richieste e funzionalità.

Ciò che sta per cambiare è il css, alcuni termini e visualizzazione in alcuni casi dati diversi (ma non così diversi)

Finora ho pensato di fare un'applicazione principale per il front-end (ad esempio utilizzando bootstrap) dove aggiungere un file css per cambiare lo stile e un file js con regole per visualizzare dati diversi e per la diversa formulazione.

Ma come posso davvero farlo? come posso evitare che lavori extra in futuro possano apportare modifiche a ciascun sito Web (front-end), come posso includere correttamente le regole. Inoltre non voglio creare 1 front-end e aggiungere condizioni (è una cattiva pratica e avrò molti problemi in futuro)

Nota: userò c # per il servizio web e angular 2 per il front-end (le tecnologie sono obbligatorie perché la mia azienda non è in grado di modificarlo). Probabilmente l'angolare 2 mi fornisce un buon modo per fare quello che sto pensando.

    
posta gon250 16.11.2016 - 13:11
fonte

2 risposte

1

Se stai lavorando su una piattaforma che contiene un back-end e un front-end multiplo, penso che sia facile usare RESTful.

Ad esempio, se la prima applicazione front-end è per ADMINS e la seconda applicazione front-end è per utenti semplici, è possibile differenziare per (funzione di accesso per esempio):

Chiamata front-end 1: /admins/login

chiamata front-end 2: /users/login

Ogni punto finale chiamerà un controller che può trattare ogni caso

    
risposta data 19.12.2016 - 16:42
fonte
0

La lingua non ha importanza, è come organizzi il codice. Non ha nemmeno bisogno di essere due lingue diverse o addirittura di essere scritto come servizio web se i frontend multipli sono ospitati sulla stessa web root.

Ciò che conta è una chiara distinzione tra i ruoli tra i modelli di dati e i modelli di visualizzazioni. Ad esempio, è necessario creare il frontend e il backend per la registrazione e il login dell'utente. Avresti il seguente:

  • Modello dati (con sql):
    • utente
  • Controller:
    • Controller utente con funzioni per loginForm (), loginPost (), registerForm (), registerPost (), ecc.
  • Visualizza modello:
    • Modulo di accesso
    • Modulo di registrazione
  • File modello:
    • di default
      • login.html
      • register.html
    • Atlanta
      • login.html
      • register.html

Tutta la logica per caricare e gestire un utente viene gestita dal Modello utente e dal Controller utente. Qualsiasi attività per il rendering di qualsiasi cosa correlata all'utente viene delegata ai modelli di visualizzazione, con i file modello html che generano la maggior parte dell'HTML ad eccezione dei dati variabili (forniti dal modello di vista).

Si noti che esistono due "temi" di file modello ... il tema "predefinito" e "altanta". Base View Model cercherà il file template del tema corrente e, se non è in grado di individuarlo, dovrebbe tornare al file "predefinito". Ciò ti consentirebbe di personalizzare SOLO i file richiesti per il tema specifico (come qualsiasi CSS, menu, intestazioni, ecc.).

In questo esempio c'è una chiara distinzione tra i componenti, e questo è chiamato MVC.

    
risposta data 16.11.2016 - 17:24
fonte

Leggi altre domande sui tag