J'ai utilisé le framework CodeIgniter, mais après avoir appris Java et des fonctionnalités impressionnantes comme les interfaces, les classes abstraites, les paquets, et que PHP 5 supporte également la plupart de ces fonctionnalités, je suis prêt à obtenir mon diplôme et à construire un système de gestion de l'information. réel OO en PHP qui utilise toutes ces fonctionnalités (y compris les espaces de noms), ce qui me permet d'élaborer des conceptions beaucoup plus élégantes.
Ce à quoi je pense, c'est qu'au lieu que tous les éléments du système partagent une même $this->
comme c'est le cas dans CodeIgniter, par exemple
$this->load->model('box');
$this->box->something();
Pour charger le fichier Box
et d'appeler son something()
méthode.
$box = new Framework\Models\Box();
$box->something();
Ou ce qui suit
abstract class BaseController
{
public function getModel($name)
{
$model = new Framework\Models\$model(); //Is this valid code?
return $model;
}
}
class MyController extends BaseController
{
public function index()
{
$box = $this->getModel('box');
$box->something();
}
}
Y a-t-il des suggestions/points de repère pour construire cela, comme les classes système minimales dont j'aurais besoin pour le cadre, les espaces de noms que je devrais avoir, ou d'autres caractéristiques ?