- Les ORM (mappers objet-relationnel) sont souvent critiqués comme un anti-pattern dans le développement logiciel.
- Cependant, cette critique est exagérée, et les ORM ne sont pas intrinsèquement mauvais, pas plus que les autres outils logiciels.
- Le véritable problème des ORM vient souvent d’un mauvais usage ou d’une mauvaise compréhension.
- Les ORM et les bases de données relationnelles fonctionnent selon des paradigmes différents, ce qui peut rendre la modélisation des données et des relations complexe.
- Les ORM enfreignent les principes de responsabilité unique (SRP) et de séparation des préoccupations (SoC), mais ces critiques ne constituent pas pour autant des problèmes décisifs.
- Les véritables problèmes des ORM concernent l’efficacité et la visibilité.
- S’ils ne sont pas utilisés correctement, les ORM peuvent être inefficaces, mais ils disposent aussi de fonctionnalités permettant d’optimiser les requêtes et d’améliorer les performances.
- Le problème du N+1, où l’ORM effectue plusieurs allers-retours vers la base de données, peut être atténué grâce à un data loader.
- Le plus gros problème des ORM est la visibilité et le débogage. Ils peuvent ne pas fournir de messages d’erreur clairs, ou rendre les problèmes difficiles à comprendre et à résoudre.
- Lorsqu’ils sont bien utilisés, les ORM peuvent être aussi efficaces que du SQL brut, mais les développeurs doivent exploiter leurs fonctionnalités et leurs équivalents en SQL natif.
- Pour certaines requêtes complexes ou problématiques, il peut être nécessaire de revenir à des requêtes SQL brutes.
- Globalement, les ORM ne sont pas intrinsèquement mauvais, mais ils nécessitent un usage prudent et éclairé pour éviter les problèmes potentiels.
1 commentaires
Avis Hacker News