Waar hoort een class die niet echt een model is in Laravel

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mark Hogeveen

Mark Hogeveen

11/09/2022 14:36:26
Quote Anchor link
Ik gebruik het Laravel php framework.
Standaard is het de bedoeling dat models in de map Models worden geordend.
Soms heb ik echter een class die ik niet echt beschouw als een model.
Deze worden soms ook wel "value objects" genoemd.
Stel je hebt bijvoorbeeld een class "Price", die de properties amount en currency heeft.
Of een class "LoginResult" met properties is_success, redirect_to, en error_message.
Deze classes voelen niet echt als een model, maar meer als een soort business object om data te ordenen en als een soort pakketje mee te geven aan andere code.
Het lijkt mij steeds alsof dit soort classes in een andere "categorie" horen, en dus niet echt models zijn, omdat ze niet echt business logica bevatten en voornamelijk een pakketje data zijn. Ook communiceren deze objecten zelf niet met andere classes, ze zijn als het ware "passief". En verder is er ook geen interactie met de database.

Waar in de projectstructuur horen dit soort classes?
 
PHP hulp

PHP hulp

01/02/2023 11:19:38
 
Jan Koehoorn

Jan Koehoorn

11/09/2022 20:26:07
Quote Anchor link
Het gebeurt nog wel eens dat Value Objects tot Models gepromoveerd worden, bijvoorbeeld als de property "currency" uit de database moet komen. Ik denk dat het daarom in Laravel vaak zo gedaan wordt. In mijn eigen framework plaats ik ze toch in een eigen map, voor het overzicht.

Offtopic:
Ik werk wel graag met value objects, omdat puur het bestaan van zo'n object betekent dat het valid is
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.