Sommaire

Intérêt de l’ORM

Il existe un réel débat qui alimente les forums Internet sur l’utilité ou non des ORM. Sans rentrer dans celui-ci essayons de regarder quelques points incontestables.

Quelques critiques souvent mentionnées concernant les ORM

Une couche supplémentaire, comme toute automatisation, est une perte de maîtrise et donc une perte de finesse.

Un ORM masque les échanges avec la base, donc le programmeur perd le contrôle direct sur les requêtes SQL envoyées par l’ORM au SGBD.

Bien sûr certains ORM permettent un paramétrage fin pour optimiser les requêtes à la base de données, mais souvent avec une charge de travail additionnelle finalement plus importante que celle de créer les requêtes directement.

Les requêtes générées par un ORM sont parfaites pour les actions de type « CRUD » (Create, Read, Update, Delete), elles peuvent être moins efficaces pour des requêtes de type SELECT, surtout si l’on a des requêtes complexes avec des jointures.

Il est possible de comparer ce débat à celui de savoir s’il faut programmer en assembleur ou en langage évolué. Ce débat en matière de langages a été tranché il y a longtemps : on utilise les deux, mais cela dépend de ce que l’on a à faire. On réserve l’assembleur à des tâches critiques et pour la plupart ...