Créer un modele
-
Créer un modèle
La partie modèle de votre application est représentée par des classes métier : vous programmerez donc ces classes en respectant les principes de programmation objets.
Classe métier
La classe métier contient les éléments suivants :- la description des données à manipuler
- les règles de gestion de base qui décrivent ces données de manière à garantir leur intégrité : type de donnée, taille maximum par exemple, modes de gestion,
- les règles de base de manipulation de l’objet : données représentatives, représentation par défaut d’un objet, etc.
De nombreuses règles par défaut sont décrites par le biais d’Annotations de code, traitées automatiquement par le framework pour assurer les règles de gestion qu’elles décrivent.
Vous pouvez rajouter des règles de gestion en écrivant les méthodes correspondantes dans votre classe. Il est conseillé de limiter les règles de gestion développées dans votre classe métier aux usages liés au maintien de l’intégrité des données et au respect des règles de gestion concernant les données. Les calculs plus complexes doivent être externalisées dans les classes de processus.
Exemple de classe métier
Dans l’application d’exemple Carnet d’adresses, vous trouverez un exemple minimal de classe métier :
<?php namespace Nickname\Addresses; /** * This stores contact information and address * * @representative first_name, last_name */ class Address { /** * @var string */ public $first_name; /** * @var string */ public $last_name; /** * @multiline * @var string */ public $address; /** * This is mandatory for all business objects, always get a view as string * * @return string */ public function __toString() { return trim($this->first_name . SP . $this->last_name); } }
Découpage des classes métier
Dans ses fondements, le framework veut favoriser la conception d’applications modulaires de grande taille en respectant les principes de la programmation SOLID.
Dans l’esprit da la limitation de la responsabilité de vos classes métier, il est conseillé de découper les classes métiers en composantes indépendantes les unes des autres. En PHP le mécanisme des traits est un outil permettant cette séparation, et la réutilisation de “parties de classes” dans plusieurs classes métier.
Le principe de Composition de classes du framework permet également une composition différente de vos classes métier lorsqu’elles sont réutilisables dans plusieurs applications, suivant la richesse des fonctionnalités plus ou moins importantes attendues.