OOP, modelli di dominio e utente

5

Durante lo sviluppo di modelli di dominio, posso vedere due modi principali di pensare all'utente:

  • Il primo presuppone che un programma sia una sorta di "simulazione" di ciò che accade nel mondo reale e l'utente è uno spettatore. Con questo approccio avresti una classe di clienti, ad esempio, con forse metodi che corrispondono alle azioni che un cliente può eseguire. Ogni volta che il cliente vuole fare qualcosa, viene chiamato il metodo corrispondente.

  • L'altro approccio sarebbe quello di progettare le classi come se fossero esposte all'utente e lui / lei ha quindi la possibilità di creare e giocare con gli oggetti "direttamente", pensando al programma come a una sorta di estensione della realtà dell'utente. Con questo approccio, una classe di clienti non avrebbe probabilmente alcun senso in quanto il cliente è già "coinvolto".

Ho letto alcuni articoli che parlano di aggiunta di sicurezza a livello di metodo, che sembra essere coerente con il secondo approccio, ma credo che il primo approccio sia molto più popolare.

Qual è il modo migliore per affrontare questo?

Grazie.

    
posta user3013752 21.11.2013 - 16:56
fonte

1 risposta

2

Due cose mi vengono fuori da questa domanda:

  1. la metafora dell'applicazione (simulazione vs sandbox API) non ha nulla a che fare con il modello di dominio; fino a quando non comprenderete meglio il modello di dominio che la decisione dovrebbe essere posticipata

  2. Probabilmente scoprirai che il tuo modello di dominio ha più di un modo di considerare l'utente.

    • La sicurezza vede gli utenti come una potenziale minaccia;)
    • Le transazioni di elaborazione dei dati possono vedere gli utenti come clienti e / o account
    • Gli elementi di configurazione / preferenze possono vedere gli utenti come proprietari di Profili o Preferenze
    • gli elementi di controllo delle caratteristiche possono visualizzare gli utenti come membri dei gruppi di autorizzazioni
    • e così via
risposta data 21.11.2013 - 22:22
fonte