Sto creando un design orientato agli oggetti per una semplice app attraverso la quale gli utenti possono ordinare cibo dai ristoranti. L'utente può sfogliare ristoranti nelle vicinanze, esplorare il menu, aggiungere articoli al carrello e infine checkout.
Per ora mi concentro su due classi principali User
e Restaurant
e l'interazione che un utente può esplorare nei ristoranti vicini. Diciamo che esiste una funzione chiamata getNearByRestaurants(Location location)
. Qual è il posto migliore per la funzione? Alcune opzioni che ho pensato -
- In
User
class. La mia confusione con questo è dovuto al fatto che la classeUser
abbia tutte le funzioni relative solo a un utente, come cambiare email, carta di credito, ecc. O dovrebbe avere funzioni che possono interagire con altre entità? - Una nuova classe chiamata
UserActions
in cui è possibile elencare tutte le interazioni dell'utente con altre entità. - Una classe chiamata
RestaurantRegister
, che può essere un singleton. Qualsiasi nuovo ristorante si registrerebbe utilizzando le funzioni di questa classe.getNearByRestaurants(Location location)
può essere in quella funzione.