Bonjour à tous,
Je suis sur l'ébauche de la refonte d'un projet de grande envergure pour le passer 100% POO, avec de l'optimisation, un clusteur percona multi node master, et une refonte du code.
Afin de restructurer l'arborescence des fichiers, et le dev. Je vais passer par des espaces de noms.
Et j'aurais une question.
Et il préférable de découper un projet en plusieurs espaces de noms par fonctionnalités ? ou bien au contraire utiliser un espace de nom global qui englobe tous le projet ?
Par exemple je dois refondre la gestion des crons. cette partie sera un part importante de mon projet au vu du temps nécessaire à la refonte. Par exemple je pensais créer un console de gestion des crons qui utilisera le namespace Kernel pour la partie accès aux models, controleur, bdd etc... puis par le namespace CRON qui lui s'occupera de la partie logique lié aux lancements des différents scripts planifiés. Qu'en pensez vous sur cette façon de faire ? ainsi je devrais autoloader le namespace Kernel et Cron lors de l'usage de cette console de gestion des crons.
Exemple :
Sachant que chaque fonctionnalité doit pouvoir être dans la capacité d'accéder a chaque autre, ainsi dans FONCTIONB on pourra avoir besoin de classe présente dans FONCTIONA et vice versa, mais il est également possible que FONCTIONC par exemple n'est jamais besoin des classes présentes dans un autre namespace.namespace MONPROJET_FONCTIONA
namespace MONPROJET_FONCTIONB
namespace MONPROJET_FONCTIONC
namespace MONPROJET_FONCTIONxxxxx
ou bien
namespace FONCTIONA
namespace FONCTIONB
namespace FONCTIONC
namespace FONCTIONxxxxx
Concernant l'autoloader, j'utilise le UniversalAPCClassLoader de Symfony. Et j'aimerais pouvoir éviter d'avoir a charger l'ensemble des fichiers présents sur chaque espaces de nom si j'en ai pas besoin.
Ensuite autre question :
Est il possible facilement d'autoloader sur demande un namespace uniquement dans certaines classes en cas de besoin sans alourdir considérablement le code ? Dans le cas d'un autoloader global qui chargerait l'ensemble du projet, est ce grave si ce dernier doit loader plus de 500 fichiers de classes ?
Merci d'avance
Cordialement,
Decad7
Partager