Non sono sicuro che ci sia una risposta "giusta" o "sbagliata" a questa, ma ero curioso del consenso generale.
Ho un modello utente che attualmente esegue funzioni utente (come il recupero dei dettagli dell'utente dal database, l'inserimento di nuovi utenti nel database, l'aggiornamento dei dettagli dell'utente ecc.)
Questo porta a una classe abbastanza grande.
Esiste un pensiero accettato sulla rottura dei modelli, quando il modello si riferisce già a un tipo di entità? O in questo caso sono ammesse classi grandi?
Al momento, la classe assomiglierà a qualcosa del genere:
<?php
class Users_Model
{
public function userExists($user_id)
{
//Code to check if user exists
}
public function fetchUser($user_id)
{
//code to fetch User object from ID...
}
protected function fetchUserPassword($user_id)
{
return $this->fetchUserValue($user_id, "password");
}
protected function fetchUserLowercaseUsername($user_id)
{
return $this->fetchUserValue($user_id, "lower");
}
private function fetchUserValue($user_id, $value)
{
//fetch a user value from the database
}
public function logout()
{
//code to log user out
}
public function doesPasswordMatch($user_id, $password)
{
//checks if inputted password matches that which is on record...
}
public function createSession($user_id)
{
//creates sessions for DATABASE
}
private function createCookie($code, $user_id)
{
//create cookies for session
}
}
?>
La mia preoccupazione stava facendo troppe cose (stava eseguendo il recupero delle informazioni utente dal database e gestendo il lato del database della disconnessione e delle sessioni per l'utente).