A l’heure où j’entends beaucoup parler d’objet, de framework, de dépendance faible, d’injection de dépendance etc. je me suis posé une question. Admettons que dans mon petit framework sans prétention j’ai envie que mes modules soient complètement indépendants, c’est-à-dire que je puisse les prendre un à un et les utiliser avec un projet complètement différent, hors framework. Zend Framework fait cela. Cependant je me suis demandé comment gérer des exceptions personnalisées dans ce cas ?
En effet, dans mon framework, j’ai créé une classe d’exception qui hérite de Exception et qui rajoute des fonctionnalités comme par exemple une méthode permettant d’afficher le message d’erreur bien formaté en HTML avec un fond rouge et presque un gyrophare sur le dessus. Oui mais voilà, quand dans un de mes modules j’ai besoin d’utiliser une exception et que j’ai à afficher le message en utilisant une méthode personnalisée de mon exception, cela casse complètement l’indépendance de mon module. Je ne peux plus le sortir de son contexte car il dépend désormais de la classe d’exception de mon framework ce qui est contraire à ce que je veux.