Fiche technique | |
---|---|
Type de produit : | Cadre d'application |
Auteur : | Daniele Teti |
Licence : | Apache License 2.0 |
Date de publication : | 2010 à maintenant |
Site Web : | https://github.com/danieleteti/delphi-orm |
Introduction
Le cadre d'application DORM, aussi nommé Delphi ORM, est un ORM puissant pour Delphi. Il a pour objectif de simplifier l'interaction entre les objets du langage de programmation Delphi et les bases de données relationnelles, en offrant une abstraction qui permet de manipuler des entités Delphi sans avoir à écrire de requêtes SQL explicites. Il est assez robuste et testé car utilisé depuis 2010 en production pour de nombreux systèmes critiques pour l'entreprise.
Voici les principales fonctionnalités :
- Indépendant de la base de données (ne nécessite pas de modifications de la base de données !)
- A une, a plusieurs et appartient à des relations
- Cartographie via fichier, attributs ou CoC
- Enregistrer et récupérer des objets graphiques, pas seulement des objets uniques.
- Configuration en externe (par fichier) ou en interne (ressource, flux de données json)
- Basé sur des interfaces !
- Prise en charge par : FirebirdSQL (en utilisant UIB, ZeosDBO), Interbase (en utilisant UIB), SQL Server (en utilisant le pilote FireDAC), SQLite3 (en utilisant l'enveloppe SQLite3)
- Validation basée sur les événements (OnBeforeInsert, ObAfterInsert, OnBeforeUpdate, OnAfterUpdate,...)
- Ignorance de la persistance
- Version d'objet
- Suivi d'objet
- Il permet de tous conserver !
- Utilisé depuis des années dans de grands systèmes à 3 niveaux (des centaines de tables avec une logique complexe) et dans de nombreux autres systèmes plus petits
- Très bonnes performances
- Entièrement testé unitairement
- Permet des environnements multiples : Développement, Test, production
- Chargement différé pour les objets liés
- Support rudimentaire pour null (actuellement uniquement dans FIREBIRD et dans l'adaptateur de persistance MSSQLServer)
- Interfaces fluides pour les requêtes
- Unité de travail pour plusieurs opérations
- Utiliser des méthodes anonymes et génériques
- Testé sur Delphi 10 Seattle, XE8, XE7, XE6, XE5, XE4, XE3 et XE2 (Win32)
Dernière mise à jour : Jeudi, le 12 septembre 2024