ORDA, qui signifie Object Relational Data Access, est une méthode d’accès aux données qui combine les avantages de la programmation orientée objet avec ceux des bases de données relationnelles, ce qui permet aux développeurs de se concentrer sur la résolution des problèmes métier plutôt que sur la gestion de l’accès aux données.
Que vous soyez novice en matière d’ORDA ou que vous en soyez déjà familier et que vous souhaitiez approfondir vos connaissances, considérez cet article de blog comme une feuille de route qui vous guidera tout au long du processus d’apprentissage.
Ce billet de blog comprend les éléments suivants :
- Avantages d’ORDA
- Vue d’ensemble d’ORDA
- Concept principal
- APIs ORDA
- Couche d’abstraction ORDA
- Travailler à distance
- Optimisation des requêtes
- Système de permissions
- Partage de données entre processus
Sans plus attendre, passons aux choses sérieuses !
Pourquoi devrais-je m’intéresser à ORDA ?
Avant d’entrer dans les détails techniques, énumérons quelques-uns des avantages d’ORDA :
Tout est un objet
ORDA est un monde où tout est un objet, y compris la base de données.
Cette approche permet d’accéder à l’ensemble de la base de données 4D en utilisant une approche orientée objet, ce qui facilite le travail avec les données et peut aider à réduire la complexité du code. ORDA fait correspondre les données à des concepts du monde réel de sorte que l’utilisation des données devient simple et supprime la nécessité d’une compréhension approfondie de la structure relationnelle.
Code orienté métier avec des classes
ORDA est livré avec des classes dédiées au modèle de données. Grâce aux classes, la complexité de l’implémentation physique des données peut être cachée, et l’application peut facilement exposer des services, être plus facile à gérer, plus facile à maintenir, et s’intégrer de manière transparente avec d’autres applications.
Des performances prêtes à l’emploi
ORDA peut contribuer à améliorer les performances des applications en fournissant plusieurs techniques d’optimisation, telles que les contextes et le chargement minimal. Ces techniques peuvent contribuer à réduire le nombre de requêtes de base de données à exécuter, ce qui permet d’accélérer les temps de réponse des applications. Le meilleur ? Tout est automatique ; contrairement à SQL ou à un outil ORM, aucune programmation n’est nécessaire.
Augmentation de l’évolutivité
ORDA peut contribuer à rendre les applications plus évolutives en prenant en charge les architectures de bases de données distribuées. Cela signifie que les données peuvent être réparties sur plusieurs serveurs de base de données, ce qui peut contribuer à améliorer les performances et à traiter des quantités de données plus importantes.
Ouvert et extensible
ORDA permet de créer une intégration transparente entre différents systèmes. Il peut être combiné avec le serveur REST pour exposer la logique métier avec une API contrôlée (par le biais de vos classes) pour d’autres outils, tels que des frameworks web comme Angular ou React.
Après avoir pris connaissance de certains des avantages d’ORDA et de la manière dont cette technologie peut avoir un impact positif sur votre application, plongeons nous dans les détails techniques.
Aperçu global d’ORDA
Ce schéma présente une vue d’ensemble de l’utilisation d’ORDA :
- ORDA fournit des APIs pour travailler avec vos données et une couche d’abstraction robuste qui sera exposée en tant qu’APIs métier.
- Un système complet de permissions est disponible pour filtrer l’accès à vos données.
- Avec ORDA, vous pouvez travailler avec le serveur REST en utilisant des bases de données distantes ou les API REST.
- Vous pouvez utiliser ORDA si vous travaillez en mode Client-Serveur.
- Le code ORDA peut également être utilisé dans une application web (4DACTION, 4D tags).
Ce diagramme devrait vous donner un aperçu de la façon dont ORDA se connecte aux différentes parties de 4D. Une fois que l’idée est claire, suivez les étapes ci-dessous pour commencer votre parcours d’apprentissage.
Que le parcours d’apprentissage commence !
étape 1 – Concepts principaux
Les principaux concepts d’ORDA peuvent être découverts ici.
Tout d’abord, familiarisez-vous avec les termes datastore, dataclass, entité et sélections d’entités. Comprenez la signification de ces concepts, car vous les verrez souvent lorsque vous travaillerez avec ORDA.
étape 2 – Les API ORDA
Ensuite, examinez les API orientées objet d’ORDA et découvrez comment vous pouvez manipuler vos données avec ces APIs.
Par exemple, l’API la plus fréquemment utilisée est query() pour exécuter une requête sur votre base de données.
Pour vous aider à découvrir chaque API, voici une liste d’articles de blog contenant des applications de démonstration avec lesquelles vous pouvez jouer.
- Interrogez votre base de données avec une approche orientée objet
- Aller et venir entre les sélections actuelles et ORDA
- Actions CRUD
- Opérations logiques
- Manipuler des entités
- Travailler avec des objets et des collections
- Calculer des statistiques
- Ordonner par formule
- Interroger avec des formules
- Caractères de remplacement nommés pour les chemins d’accès aux attributs
- Caractères de remplacement nommés
- Sélection d’entités : méthodes extract() et refresh()
- Méthodes membres pour obtenir des informations sur la structure
- Comparer deux sélections d’entités
- Mécanismes de verrouillage optimistes
- Verrouillage des entités
- Écrire du code générique
- Exemple de code générique
- Aide-mémoire ORDA
découvrez la puissance des relations avec orda
Comme nous l’avons dit précédemment, ORDA est une méthode d’accès aux données qui combine la programmation orientée objet avec les avantages des bases de données relationnelles.
Si vous voulez aller plus loin et découvrir tous les avantages que vous pouvez tirer des relations avec ORDA, voici une série de démos où vous apprendrez à économiser de nombreuses lignes de code et à construire une interface conviviale.
LieR ORDA AVEC le code 4D classique
Si vous utilisez toujours le code 4D classique (que nous connaissons et aimons tous), vous pouvez le mélanger avec le code ORDA si nécessaire.
Ceci est utile pour introduire progressivement les concepts ORDA dans votre application.
Consultez cet article de blog pour plus de détails.
Étape 3 – Couche d’abstraction ORDA.
Pour aller plus loin avec ORDA, profitez de la couche d’abstraction.
Dans cette couche, vous implémenterez toute votre logique métier à travers les classes du modèle de données ORDA.
La manipulation des classes va un peu plus loin dans la programmation orientée objet. Chaque classe peut prendre en charge la logique métier dans des fonctions.
Découvrez les avantages des attributs calculés et des alias. Il est facile de mettre en place un attribut calculé définissant sa formule de calcul et toute sa logique métier. Ou de définir un alias comme n’importe quel autre attribut dans votre modèle de données.
Par conséquent, les développeurs utiliseront cette couche d’abstraction au lieu de s’occuper de la couche d’implémentation physique.
- Bienvenue dans le monde des classes ORDA
- Classes ORDA pour gérer votre modèle de données
- Classes de modèle de données ORDA et REST
- ASTUCE avec les classes de modèle de données ORDA
- Un spectacle magique avec des attributs calculés
- Dites bonjour aux alias
étape 4 – Travailler à distance
C’est maintenant l’heure de la partie amusante 🙂
client-serveur
Vous pouvez utiliser ORDA en mode client-serveur. Utilisez la commande ds pour obtenir l’objet datastore et commencer à travailler avec vos données.
Voici plus de détails sur les fonctionnalités spécifiques pour travailler en C/S.
le datastore distant
Si vous travaillez en Client Server, vous êtes limité à la base de données actuelle, ce qui nécessite une connexion réseau permanente.
Grâce au remote datastore, une application peut obtenir des données d’une autre base de données 4D exposée sur un serveur 4D !
De nombreux cas d’utilisation sont couverts par cette fonctionnalité :
- organiser vos applications pour travailler hors ligne et ne synchroniser les données locales que lorsque les données distantes sont accessibles
- publier vos données sur plusieurs serveurs et passer de l’un à l’autre si nécessaire
- répartissez votre modèle de données entre différentes bases de données( par exemple, données locales, données internationales). Vous pouvez alors avoir vos données distribuées à différents endroits et toujours accessibles via un seul code client 4D (méthodes de projet et objets de formulaire).
Lisez ces articles de blog pour en savoir plus :
- Les sources de données 4D multiples, ça vous intéresse ?
- Datastores distants, un cas d’utilisation pratique
API REST
Les API de serveur REST reposent sur les concepts ORDA.
Voici quelques articles de blog utiles pour apprendre à utiliser les API REST.
étape 5 – optimisation des requêtes
Lorsque vous travaillez à distance avec ORDA, sachez que les requêtes sont automatiquement optimisées pour demander au serveur uniquement les attributs nécessaires. En plus de cela, vous pouvez également personnaliser vos propres règles d’optimisation pour améliorer les performances.
Pour en savoir plus, étape par étape, voici une liste d’articles de blog.
- Utilisez ORDA pour améliorer les performances
- Contrôle complet des requêtes REST
- Optimisation des requêtes et démo
- Journalisation des requêtes
Et voici une démonstration vidéo en direct qui a été faite pendant le Sommet 2020
étape 6 – Système de permissions pour filtrer l’accès aux données
Le filtrage de l’accès aux données est une fonctionnalité indispensable pour empêcher tout accès malveillant à votre application.
Depuis la v19R8, vous bénéficiez d’un système puissant et entièrement personnalisable pour protéger vos données des utilisateurs non autorisés. Il s’agit d’un système permettant de protéger vos données en fonction de la personne qui y accède et des données auxquelles elle accède.
Il couvre tous les processus web, comme les requêtes REST, les requêtes reçues sur un datastore distant, et les processus web comme 4DACTION ou 4D tags.
Lisez cet article de blog pour en savoir plus.
Pour conclure
Rappelez-vous, ORDA est un outil puissant qui peut rendre votre processus de développement et l’accès aux données plus rapide et plus efficace.
Nous espérons que cet article de blog vous a aidé. N’hésitez pas à poser vos questions sur le forum.
Nous serons heureux de vous aider avec ORDA !