SlideShare une entreprise Scribd logo
1  sur  29
Télécharger pour lire hors ligne
Découvrez FireDAC pour la VCL
Webinaire du 16 octobre 2018
(c) Patrick Prémartin / developpeur-pascal.fr
Au menu du jour
• Introduction
• Les frameworks de bases de données dans Delphi
• FireDAC
• Utiliser FireDAC dans un projet VCL pour Windows
• Démos
• Questions / réponses
• Conclusion
(c) Patrick Prémartin / developpeur-pascal.fr
Introduction
(c) Patrick Prémartin / developpeur-pascal.fr
Introduction
• Présentation de la société Barnsten
https://www.barnsten.com/fr/
• Présentation de la société Olf Software
https://www.olfsoftware.fr
• Présentation de Patrick Prémartin
https://www.linkedin.com/in/patrickpremartin/
• Les différentes versions de Delphi
https://www.embarcadero.com/fr/products/delphi
(c) Patrick Prémartin / developpeur-pascal.fr
A propos de Barnsten
• Distributeur des logiciels Embarcadero en France depuis bientôt 3
ans, avec plus de 20 ans d’expérience dans le BENELUX, Barnsten est
l’interlocuteur privilégié pour toutes les questions concernant les
achats et renouvellements de licences, mais pas seulement.
• La société Barnsten peut aussi proposer des formations et un premier
niveau d’assistance pour les clients ne trouvant pas de réponses à
leurs questions sur les forums ou blogs de la communauté.
• En plus de présentations en live, Barnsten organise aussi des
webinaires gratuits en français pour faire découvrir Delphi, C++Builder
et RAD Studio.
(c) Patrick Prémartin / developpeur-pascal.fr
A propos de Olf Software
• Depuis 17 ans la société de services Olf Software propose des
prestations de conseil, développement et formation sur les
technologies liées au web et au développement logiciel.
• Organisme de formation enregistré en début d’année et référencé sur
Datadock, Olf Software s’est recentrée en 2018 sur la formation
professionnelle en lien avec Delphi.
• Des formations inter entreprises sont organisées régulièrement et
annoncées sur https://www.se-former-a-delphi.fr/
• Des formations intra entreprise sont aussi organisées sur demande.
(c) Patrick Prémartin / developpeur-pascal.fr
Et votre hôte pour ce webinaire
• Ancien utilisateur de Turbo Pascal, amoureux de Delphi depuis
toujours, développeur web depuis NCSA Mosaic…
• Prestataire et formateur à travers sa société Olf Software ou en sous-
traitance pour d’autres entreprises.
• Editeur du blog https://www.developpeur-pascal.fr dédié au
développement en Pascal (essentiellement) sous Delphi.
• MVP Embarcadero pour les technologies liées à Delphi depuis octobre
2017
• Auteur d’articles, de livres et parfois même conférencier.
(c) Patrick Prémartin / developpeur-pascal.fr
Les versions de Delphi
• Delphi existe en plusieurs licences, seul ou avec C++Builder dans le
bundle RAD Studio:
• Academic : pour les établissements d’enseignement et leurs étudiants
• Community Edition : gratuit pour tous, en licence commerciale limitée
• Professional, Enterprise, Architect : pour les entreprises, selon leurs besoins
• La VCL et les compilateurs Windows en 32 et 64 bits sont disponibles
sur toutes les versions de Delphi.
• FireDAC est disponible dans chaque version avec plus ou moins de
fonctionnalités.
(c) Patrick Prémartin / developpeur-pascal.fr
Les frameworks de bases de
données dans Delphi
(c) Patrick Prémartin / developpeur-pascal.fr
Les frameworks de bases de données
dans Delphi
• Le BDE (Borland Database Engine)
• ADO
• dbExpress
• Les composants dédiés à Interbase
• FireDAC
• Il existe d’autres systèmes d’accès à des bases de données, fournis
avec Delphi ou disponibles chez des éditeurs de composants.
(c) Patrick Prémartin / developpeur-pascal.fr
Le BDE (Borland Database Engine)
• Le framework historique d’accès simplifié aux bases de données pour
des applications Windows 32 bits.
• Officiellement DEPRECATED mais toujours téléchargeable et utilisable
(même sous Windows 10, en bidouillant un peu).
• Des composants simples d’utilisation créés pour développer
rapidement une application de base de données réactive.
• Permettait d’accéder à dBase, Paradox, MSACCESS et aux bases de
données ODBC
• Nécessite un runtime sur les ordinateurs qui l’utilisent.
(c) Patrick Prémartin / developpeur-pascal.fr
ADO
• Inspirés du BDE, les composants ADO sont toujours fournis pour des
raisons de compatibilité ascendante.
• Ils sont basés sur la technologie OLE de Microsoft Windows.
• Ils s’utilisent en Windows 32 et 64 bits.
(c) Patrick Prémartin / developpeur-pascal.fr
dbExpress
• Des composants assez anciens, plutôt dédiés à des bases SQL,
maintenus et adaptés pour fonctionner en multiplateforme.
• dbExpress permet de faire des accès séquentiels à des bases de
données SQL, des requêtes complexes, des mises à jour et travailler
avec des procédures stockées.
• dbExpress sert de base à la technologie DataSnap d’accès déporté à
des bases de données ou des fonctions et procédures (en tant que
méthodes de classe).
• L’accès à certaines bases de données nécessite un driver client à
déployer avec les logiciels développés.
(c) Patrick Prémartin / developpeur-pascal.fr
Les composants dédiés à Interbase
• Depuis le début le moteur Interbase a bénéficié de composants
dédiés fournis avec Delphi et C++Builder.
• Ces composants utilisent les API d’Interbase et ne permettent
d’accéder qu’à Interbase et son fork Firebird (pour les API
compatibles).
• Les composants TIBxxx sont globalement multiplateforme.
• A n’utiliser que si vous désirez un accès direct à des fonctions
d’Interbase et ne prévoyez pas de migration vers un autre moteur de
base de données un jour.
(c) Patrick Prémartin / developpeur-pascal.fr
FireDAC
(c) Patrick Prémartin / developpeur-pascal.fr
FireDAC : des composants modernes
• Issu d’un rachat technologique, FireDAC est un ensemble très complet
de composants pour travailler facilement sur tous types de bases de
données.
• Les composants FireDAC sont majoritairement multiplateforme. Ils
donnent accès aux bases de données disponibles sur la plateforme
d’exécution des programmes ou à distance.
(c) Patrick Prémartin / developpeur-pascal.fr
FireDAC : des composants modernes
• L’architecture de FireDAC permet de faire plus qu’un simple accès à
des bases de données SQL.
• Quelle que soit la base de données utilisée, FireDAC ajoute des
fonctionnalités bien pratiques pour gérer les copies de données, les
changements de format, l’historique, les pertes de connexion, les
mises à jour différées, les transactions, les requêtes multibases…
(c) Patrick Prémartin / developpeur-pascal.fr
FireDAC : des composants modernes
• FireDAC contient de nombreux composants organisés par couche
avec comme base un TFDPhysXXXDriver selon la base à utiliser.
• FireDAC permet en standard d’accéder à des bases SQL locales, des
bases SQL client/serveur et à la base NoSQL MongoDB.
• L’éditeur CDATA propose des drivers pour FireDAC afin d’accéder en
SQL à des API de nombreux services en ligne sur Internet. La liste à
jour est sur https://www.cdata.com/firedac/
(c) Patrick Prémartin / developpeur-pascal.fr
FireDAC : des composants modernes
• Les composants FireDAC et drivers permettant un accès à des bases de
données locales sont disponibles à partir des éditions Professional et
Community Edition de Delphi, C++Builder et RAD Studio.
• Les composants FireDAC et drivers donnant accès à des bases
client/serveur sont disponibles à partir de l’édition Enterprise de Delphi,
C++Builder et RAD Studio.
• Les composants CDATA sont disponibles sous forme d’abonnement annuel
(justifié par la maintenance obligatoire de ces composants en fonction des
API des services utilisés).
(c) Patrick Prémartin / developpeur-pascal.fr
FireDAC : des composants modernes
• Il n’est peut-être pas utile de le préciser, mais sait-on jamais ?
FireDAC est LE framework de base de données fortement
recommandé pour tous les usages dans vos projets.
(c) Patrick Prémartin / developpeur-pascal.fr
Utiliser FireDAC dans un projet
VCL pour Windows
(c) Patrick Prémartin / developpeur-pascal.fr
A propos de la VCL
• La VCL c’est la librairie de composants visuels (et non visuels)
historique de Delphi.
• C’est un ensemble de composants dédiés aux logiciels devant tourner
sous Windows en 16 (dans les vieilles versions de Delphi ou
C++Builder), 32 ou 64 bits.
• Les composants VCL sont mappés sur des API de Windows et son
système de messagerie permettant de gérer les événements du
système.
(c) Patrick Prémartin / developpeur-pascal.fr
A propos de la VCL
• La VCL contient 3 types de composants :
• Des composants non visuels (accès aux bases de données, capteurs, timer, …)
• Des composants visuels (champs de saisie, images, textes, vidéos, …)
• Des composants visuels de base de données (les mêmes mais alimentés
automatiquement par des ensembles de données)
(c) Patrick Prémartin / developpeur-pascal.fr
Utiliser FireDAC avec la VCL
• FireDAC permet de travailler avec des ensembles de données comme
les frameworks plus anciens. On peut donc travailler comme on le fait
depuis le BDE.
• Pour utiliser les composants FireDAC dans un projet VCL on peut :
• Coder les accès à la base de données à la main.
• Utiliser les composants visuels de base de données.
• Utiliser LiveBindings pour lier des composants visuels classiques à des
ensembles de données.
(c) Patrick Prémartin / developpeur-pascal.fr
Démos
(c) Patrick Prémartin / developpeur-pascal.fr
Questions / réponses
(c) Patrick Prémartin / developpeur-pascal.fr
Conclusion
(c) Patrick Prémartin / developpeur-pascal.fr
En savoir plus sur FireDAC
• A travers ce webinaire je ne pouvais pas tout dire sur FireDAC. Voici
quelques liens pour en apprendre plus.
• Documentation officielle :
https://vasur.fr/docfiredac
• Le livre « Delphi in Depth: FireDAC » de Cary Jensen :
https://amzn.to/2yFfUqS
• Les articles consacrés aux bases de données sur mon blog :
https://vasur.fr/devpasbdd
(c) Patrick Prémartin / developpeur-pascal.fr
Conclusion
• Ce webinaire et les sources des démos seront rapidement mis à
disposition sur le blog https://www.developpeur-pascal.fr
• Le prochain webinaire sera consacré à l’utilisation de FireDAC dans les
applications multiplateforme développées sous Delphi avec
Firemonkey. Retrouvons-nous le 30 octobre. Inscrivez-vous sur
https://www.barnsten.com/fr/events
(c) Patrick Prémartin / developpeur-pascal.fr

Contenu connexe

Tendances

Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm
 
Alphorm.com Formation Le langage Ruby
Alphorm.com Formation Le langage RubyAlphorm.com Formation Le langage Ruby
Alphorm.com Formation Le langage RubyAlphorm
 
Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm
 
2013.04.12 Symfony et eZ Publish, embarquement immédiat - AFUP Lyon Conference
2013.04.12 Symfony et eZ Publish, embarquement immédiat - AFUP Lyon Conference2013.04.12 Symfony et eZ Publish, embarquement immédiat - AFUP Lyon Conference
2013.04.12 Symfony et eZ Publish, embarquement immédiat - AFUP Lyon ConferenceNicolas Pastorino
 
Alphorm.com Formation Data science avec R - Prise en main des IDE
Alphorm.com Formation Data science avec R - Prise en main des IDEAlphorm.com Formation Data science avec R - Prise en main des IDE
Alphorm.com Formation Data science avec R - Prise en main des IDEAlphorm
 
eZ publish - Publication instantanée et fort trafic web
eZ publish - Publication instantanée et fort trafic webeZ publish - Publication instantanée et fort trafic web
eZ publish - Publication instantanée et fort trafic webGauthier Garnier
 
Alphorm.com Formation Nouveautés Windows Server 2016
Alphorm.com Formation Nouveautés Windows Server 2016Alphorm.com Formation Nouveautés Windows Server 2016
Alphorm.com Formation Nouveautés Windows Server 2016Alphorm
 
alphorm.com - Formation Linux LPIC-1/Comptia Linux+
alphorm.com - Formation Linux LPIC-1/Comptia Linux+alphorm.com - Formation Linux LPIC-1/Comptia Linux+
alphorm.com - Formation Linux LPIC-1/Comptia Linux+Alphorm
 
Alphorm.com support de la formation Git avancé
Alphorm.com support de la formation Git avancé Alphorm.com support de la formation Git avancé
Alphorm.com support de la formation Git avancé Alphorm
 

Tendances (9)

Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.x
 
Alphorm.com Formation Le langage Ruby
Alphorm.com Formation Le langage RubyAlphorm.com Formation Le langage Ruby
Alphorm.com Formation Le langage Ruby
 
Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm.com formation-GNS3
Alphorm.com formation-GNS3
 
2013.04.12 Symfony et eZ Publish, embarquement immédiat - AFUP Lyon Conference
2013.04.12 Symfony et eZ Publish, embarquement immédiat - AFUP Lyon Conference2013.04.12 Symfony et eZ Publish, embarquement immédiat - AFUP Lyon Conference
2013.04.12 Symfony et eZ Publish, embarquement immédiat - AFUP Lyon Conference
 
Alphorm.com Formation Data science avec R - Prise en main des IDE
Alphorm.com Formation Data science avec R - Prise en main des IDEAlphorm.com Formation Data science avec R - Prise en main des IDE
Alphorm.com Formation Data science avec R - Prise en main des IDE
 
eZ publish - Publication instantanée et fort trafic web
eZ publish - Publication instantanée et fort trafic webeZ publish - Publication instantanée et fort trafic web
eZ publish - Publication instantanée et fort trafic web
 
Alphorm.com Formation Nouveautés Windows Server 2016
Alphorm.com Formation Nouveautés Windows Server 2016Alphorm.com Formation Nouveautés Windows Server 2016
Alphorm.com Formation Nouveautés Windows Server 2016
 
alphorm.com - Formation Linux LPIC-1/Comptia Linux+
alphorm.com - Formation Linux LPIC-1/Comptia Linux+alphorm.com - Formation Linux LPIC-1/Comptia Linux+
alphorm.com - Formation Linux LPIC-1/Comptia Linux+
 
Alphorm.com support de la formation Git avancé
Alphorm.com support de la formation Git avancé Alphorm.com support de la formation Git avancé
Alphorm.com support de la formation Git avancé
 

Similaire à Découvrez FireDAC pour la VCL

Faire des applications web avec Delphi
Faire des applications web avec DelphiFaire des applications web avec Delphi
Faire des applications web avec Delphipprem
 
Utiliser l'EDI pour développer en multiplateforme
Utiliser l'EDI pour développer en multiplateformeUtiliser l'EDI pour développer en multiplateforme
Utiliser l'EDI pour développer en multiplateformepprem
 
Créer des composants visuels sans faire de composant
Créer des composants visuels sans faire de composantCréer des composants visuels sans faire de composant
Créer des composants visuels sans faire de composantpprem
 
Utiliser des dessins vectoriels à la place d'images
Utiliser des dessins vectoriels à la place d'imagesUtiliser des dessins vectoriels à la place d'images
Utiliser des dessins vectoriels à la place d'imagespprem
 
Coder sans coder : Delphi en mode no code !
Coder sans coder : Delphi en mode no code !Coder sans coder : Delphi en mode no code !
Coder sans coder : Delphi en mode no code !pprem
 
Diffuser nos logiciels et leurs mises à jour
Diffuser nos logiciels et leurs mises à jourDiffuser nos logiciels et leurs mises à jour
Diffuser nos logiciels et leurs mises à jourpprem
 
QR codes et codes à barres sous Delphi
QR codes et codes à barres sous DelphiQR codes et codes à barres sous Delphi
QR codes et codes à barres sous Delphipprem
 
Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?pprem
 
Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Microsoft
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !VISEO
 
"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...
"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi..."J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...
"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...Microsoft
 
Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Cellenza
 
Présentation de Delphi 10.4 Sydney, C++Builder 10.4 Sydney et RAD Studio 10.4...
Présentation de Delphi 10.4 Sydney, C++Builder 10.4 Sydney et RAD Studio 10.4...Présentation de Delphi 10.4 Sydney, C++Builder 10.4 Sydney et RAD Studio 10.4...
Présentation de Delphi 10.4 Sydney, C++Builder 10.4 Sydney et RAD Studio 10.4...pprem
 
Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesChristophe Furmaniak
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfboulonvert
 
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureTechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureThomas Conté
 
Radio France rencontre Drupal
Radio France rencontre DrupalRadio France rencontre Drupal
Radio France rencontre DrupalOlivier Friesse
 
Déploiement, orchestration & sécurisation d’APIs
Déploiement, orchestration & sécurisation d’APIsDéploiement, orchestration & sécurisation d’APIs
Déploiement, orchestration & sécurisation d’APIsNicolas Herbaut
 
Deployer PHP et MariaDB dans Azure - TechDays
Deployer PHP et MariaDB dans Azure - TechDaysDeployer PHP et MariaDB dans Azure - TechDays
Deployer PHP et MariaDB dans Azure - TechDaysChristophe Villeneuve
 

Similaire à Découvrez FireDAC pour la VCL (20)

Faire des applications web avec Delphi
Faire des applications web avec DelphiFaire des applications web avec Delphi
Faire des applications web avec Delphi
 
Utiliser l'EDI pour développer en multiplateforme
Utiliser l'EDI pour développer en multiplateformeUtiliser l'EDI pour développer en multiplateforme
Utiliser l'EDI pour développer en multiplateforme
 
Créer des composants visuels sans faire de composant
Créer des composants visuels sans faire de composantCréer des composants visuels sans faire de composant
Créer des composants visuels sans faire de composant
 
Utiliser des dessins vectoriels à la place d'images
Utiliser des dessins vectoriels à la place d'imagesUtiliser des dessins vectoriels à la place d'images
Utiliser des dessins vectoriels à la place d'images
 
Coder sans coder : Delphi en mode no code !
Coder sans coder : Delphi en mode no code !Coder sans coder : Delphi en mode no code !
Coder sans coder : Delphi en mode no code !
 
Diffuser nos logiciels et leurs mises à jour
Diffuser nos logiciels et leurs mises à jourDiffuser nos logiciels et leurs mises à jour
Diffuser nos logiciels et leurs mises à jour
 
QR codes et codes à barres sous Delphi
QR codes et codes à barres sous DelphiQR codes et codes à barres sous Delphi
QR codes et codes à barres sous Delphi
 
Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?
 
Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !
 
"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...
"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi..."J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...
"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...
 
Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1
 
Présentation de Delphi 10.4 Sydney, C++Builder 10.4 Sydney et RAD Studio 10.4...
Présentation de Delphi 10.4 Sydney, C++Builder 10.4 Sydney et RAD Studio 10.4...Présentation de Delphi 10.4 Sydney, C++Builder 10.4 Sydney et RAD Studio 10.4...
Présentation de Delphi 10.4 Sydney, C++Builder 10.4 Sydney et RAD Studio 10.4...
 
Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantes
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdf
 
Infrastructure as code drupal
Infrastructure as code drupalInfrastructure as code drupal
Infrastructure as code drupal
 
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureTechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
 
Radio France rencontre Drupal
Radio France rencontre DrupalRadio France rencontre Drupal
Radio France rencontre Drupal
 
Déploiement, orchestration & sécurisation d’APIs
Déploiement, orchestration & sécurisation d’APIsDéploiement, orchestration & sécurisation d’APIs
Déploiement, orchestration & sécurisation d’APIs
 
Deployer PHP et MariaDB dans Azure - TechDays
Deployer PHP et MariaDB dans Azure - TechDaysDeployer PHP et MariaDB dans Azure - TechDays
Deployer PHP et MariaDB dans Azure - TechDays
 

Plus de pprem

Using FireMonkey as a game engine
Using FireMonkey as a game engineUsing FireMonkey as a game engine
Using FireMonkey as a game enginepprem
 
Using Delphi as a no code development environment
Using Delphi as a no code development environmentUsing Delphi as a no code development environment
Using Delphi as a no code development environmentpprem
 
Easy coding a multi device game with FireMonkey
Easy coding a multi device game with FireMonkeyEasy coding a multi device game with FireMonkey
Easy coding a multi device game with FireMonkeypprem
 
Utiliser FireMonkey comme moteur de jeux vidéo
Utiliser FireMonkey comme moteur de jeux vidéoUtiliser FireMonkey comme moteur de jeux vidéo
Utiliser FireMonkey comme moteur de jeux vidéopprem
 
Utilisation de git avec Delphi
Utilisation de git avec DelphiUtilisation de git avec Delphi
Utilisation de git avec Delphipprem
 
Delphi et les tests unitaires
Delphi et les tests unitairesDelphi et les tests unitaires
Delphi et les tests unitairespprem
 
Développer une application pour Android TV avec Delphi
Développer une application pour Android TV avec DelphiDévelopper une application pour Android TV avec Delphi
Développer une application pour Android TV avec Delphipprem
 
Sauvegarder et restaurer l'état des applications mobiles
Sauvegarder et restaurer l'état des applications mobilesSauvegarder et restaurer l'état des applications mobiles
Sauvegarder et restaurer l'état des applications mobilespprem
 
Gérer le clavier virtuel sous iOS et Android
Gérer le clavier virtuel sous iOS et AndroidGérer le clavier virtuel sous iOS et Android
Gérer le clavier virtuel sous iOS et Androidpprem
 
Internationaliser les projets VCL / FMX
Internationaliser les projets VCL / FMXInternationaliser les projets VCL / FMX
Internationaliser les projets VCL / FMXpprem
 
Faire une interface adaptive avec la VCL
Faire une interface adaptive avec la VCLFaire une interface adaptive avec la VCL
Faire une interface adaptive avec la VCLpprem
 
Faire une interface adaptive avec FireMonkey
Faire une interface adaptive avec FireMonkeyFaire une interface adaptive avec FireMonkey
Faire une interface adaptive avec FireMonkeypprem
 
POC Notes de frais
POC Notes de fraisPOC Notes de frais
POC Notes de fraispprem
 
Comment écrire des articles de blog à succès
Comment écrire des articles de blog à succèsComment écrire des articles de blog à succès
Comment écrire des articles de blog à succèspprem
 
Gagner de l'argent sur Internet
Gagner de l'argent sur InternetGagner de l'argent sur Internet
Gagner de l'argent sur Internetpprem
 
Trafic
TraficTrafic
Traficpprem
 

Plus de pprem (16)

Using FireMonkey as a game engine
Using FireMonkey as a game engineUsing FireMonkey as a game engine
Using FireMonkey as a game engine
 
Using Delphi as a no code development environment
Using Delphi as a no code development environmentUsing Delphi as a no code development environment
Using Delphi as a no code development environment
 
Easy coding a multi device game with FireMonkey
Easy coding a multi device game with FireMonkeyEasy coding a multi device game with FireMonkey
Easy coding a multi device game with FireMonkey
 
Utiliser FireMonkey comme moteur de jeux vidéo
Utiliser FireMonkey comme moteur de jeux vidéoUtiliser FireMonkey comme moteur de jeux vidéo
Utiliser FireMonkey comme moteur de jeux vidéo
 
Utilisation de git avec Delphi
Utilisation de git avec DelphiUtilisation de git avec Delphi
Utilisation de git avec Delphi
 
Delphi et les tests unitaires
Delphi et les tests unitairesDelphi et les tests unitaires
Delphi et les tests unitaires
 
Développer une application pour Android TV avec Delphi
Développer une application pour Android TV avec DelphiDévelopper une application pour Android TV avec Delphi
Développer une application pour Android TV avec Delphi
 
Sauvegarder et restaurer l'état des applications mobiles
Sauvegarder et restaurer l'état des applications mobilesSauvegarder et restaurer l'état des applications mobiles
Sauvegarder et restaurer l'état des applications mobiles
 
Gérer le clavier virtuel sous iOS et Android
Gérer le clavier virtuel sous iOS et AndroidGérer le clavier virtuel sous iOS et Android
Gérer le clavier virtuel sous iOS et Android
 
Internationaliser les projets VCL / FMX
Internationaliser les projets VCL / FMXInternationaliser les projets VCL / FMX
Internationaliser les projets VCL / FMX
 
Faire une interface adaptive avec la VCL
Faire une interface adaptive avec la VCLFaire une interface adaptive avec la VCL
Faire une interface adaptive avec la VCL
 
Faire une interface adaptive avec FireMonkey
Faire une interface adaptive avec FireMonkeyFaire une interface adaptive avec FireMonkey
Faire une interface adaptive avec FireMonkey
 
POC Notes de frais
POC Notes de fraisPOC Notes de frais
POC Notes de frais
 
Comment écrire des articles de blog à succès
Comment écrire des articles de blog à succèsComment écrire des articles de blog à succès
Comment écrire des articles de blog à succès
 
Gagner de l'argent sur Internet
Gagner de l'argent sur InternetGagner de l'argent sur Internet
Gagner de l'argent sur Internet
 
Trafic
TraficTrafic
Trafic
 

Découvrez FireDAC pour la VCL

  • 1. Découvrez FireDAC pour la VCL Webinaire du 16 octobre 2018 (c) Patrick Prémartin / developpeur-pascal.fr
  • 2. Au menu du jour • Introduction • Les frameworks de bases de données dans Delphi • FireDAC • Utiliser FireDAC dans un projet VCL pour Windows • Démos • Questions / réponses • Conclusion (c) Patrick Prémartin / developpeur-pascal.fr
  • 3. Introduction (c) Patrick Prémartin / developpeur-pascal.fr
  • 4. Introduction • Présentation de la société Barnsten https://www.barnsten.com/fr/ • Présentation de la société Olf Software https://www.olfsoftware.fr • Présentation de Patrick Prémartin https://www.linkedin.com/in/patrickpremartin/ • Les différentes versions de Delphi https://www.embarcadero.com/fr/products/delphi (c) Patrick Prémartin / developpeur-pascal.fr
  • 5. A propos de Barnsten • Distributeur des logiciels Embarcadero en France depuis bientôt 3 ans, avec plus de 20 ans d’expérience dans le BENELUX, Barnsten est l’interlocuteur privilégié pour toutes les questions concernant les achats et renouvellements de licences, mais pas seulement. • La société Barnsten peut aussi proposer des formations et un premier niveau d’assistance pour les clients ne trouvant pas de réponses à leurs questions sur les forums ou blogs de la communauté. • En plus de présentations en live, Barnsten organise aussi des webinaires gratuits en français pour faire découvrir Delphi, C++Builder et RAD Studio. (c) Patrick Prémartin / developpeur-pascal.fr
  • 6. A propos de Olf Software • Depuis 17 ans la société de services Olf Software propose des prestations de conseil, développement et formation sur les technologies liées au web et au développement logiciel. • Organisme de formation enregistré en début d’année et référencé sur Datadock, Olf Software s’est recentrée en 2018 sur la formation professionnelle en lien avec Delphi. • Des formations inter entreprises sont organisées régulièrement et annoncées sur https://www.se-former-a-delphi.fr/ • Des formations intra entreprise sont aussi organisées sur demande. (c) Patrick Prémartin / developpeur-pascal.fr
  • 7. Et votre hôte pour ce webinaire • Ancien utilisateur de Turbo Pascal, amoureux de Delphi depuis toujours, développeur web depuis NCSA Mosaic… • Prestataire et formateur à travers sa société Olf Software ou en sous- traitance pour d’autres entreprises. • Editeur du blog https://www.developpeur-pascal.fr dédié au développement en Pascal (essentiellement) sous Delphi. • MVP Embarcadero pour les technologies liées à Delphi depuis octobre 2017 • Auteur d’articles, de livres et parfois même conférencier. (c) Patrick Prémartin / developpeur-pascal.fr
  • 8. Les versions de Delphi • Delphi existe en plusieurs licences, seul ou avec C++Builder dans le bundle RAD Studio: • Academic : pour les établissements d’enseignement et leurs étudiants • Community Edition : gratuit pour tous, en licence commerciale limitée • Professional, Enterprise, Architect : pour les entreprises, selon leurs besoins • La VCL et les compilateurs Windows en 32 et 64 bits sont disponibles sur toutes les versions de Delphi. • FireDAC est disponible dans chaque version avec plus ou moins de fonctionnalités. (c) Patrick Prémartin / developpeur-pascal.fr
  • 9. Les frameworks de bases de données dans Delphi (c) Patrick Prémartin / developpeur-pascal.fr
  • 10. Les frameworks de bases de données dans Delphi • Le BDE (Borland Database Engine) • ADO • dbExpress • Les composants dédiés à Interbase • FireDAC • Il existe d’autres systèmes d’accès à des bases de données, fournis avec Delphi ou disponibles chez des éditeurs de composants. (c) Patrick Prémartin / developpeur-pascal.fr
  • 11. Le BDE (Borland Database Engine) • Le framework historique d’accès simplifié aux bases de données pour des applications Windows 32 bits. • Officiellement DEPRECATED mais toujours téléchargeable et utilisable (même sous Windows 10, en bidouillant un peu). • Des composants simples d’utilisation créés pour développer rapidement une application de base de données réactive. • Permettait d’accéder à dBase, Paradox, MSACCESS et aux bases de données ODBC • Nécessite un runtime sur les ordinateurs qui l’utilisent. (c) Patrick Prémartin / developpeur-pascal.fr
  • 12. ADO • Inspirés du BDE, les composants ADO sont toujours fournis pour des raisons de compatibilité ascendante. • Ils sont basés sur la technologie OLE de Microsoft Windows. • Ils s’utilisent en Windows 32 et 64 bits. (c) Patrick Prémartin / developpeur-pascal.fr
  • 13. dbExpress • Des composants assez anciens, plutôt dédiés à des bases SQL, maintenus et adaptés pour fonctionner en multiplateforme. • dbExpress permet de faire des accès séquentiels à des bases de données SQL, des requêtes complexes, des mises à jour et travailler avec des procédures stockées. • dbExpress sert de base à la technologie DataSnap d’accès déporté à des bases de données ou des fonctions et procédures (en tant que méthodes de classe). • L’accès à certaines bases de données nécessite un driver client à déployer avec les logiciels développés. (c) Patrick Prémartin / developpeur-pascal.fr
  • 14. Les composants dédiés à Interbase • Depuis le début le moteur Interbase a bénéficié de composants dédiés fournis avec Delphi et C++Builder. • Ces composants utilisent les API d’Interbase et ne permettent d’accéder qu’à Interbase et son fork Firebird (pour les API compatibles). • Les composants TIBxxx sont globalement multiplateforme. • A n’utiliser que si vous désirez un accès direct à des fonctions d’Interbase et ne prévoyez pas de migration vers un autre moteur de base de données un jour. (c) Patrick Prémartin / developpeur-pascal.fr
  • 15. FireDAC (c) Patrick Prémartin / developpeur-pascal.fr
  • 16. FireDAC : des composants modernes • Issu d’un rachat technologique, FireDAC est un ensemble très complet de composants pour travailler facilement sur tous types de bases de données. • Les composants FireDAC sont majoritairement multiplateforme. Ils donnent accès aux bases de données disponibles sur la plateforme d’exécution des programmes ou à distance. (c) Patrick Prémartin / developpeur-pascal.fr
  • 17. FireDAC : des composants modernes • L’architecture de FireDAC permet de faire plus qu’un simple accès à des bases de données SQL. • Quelle que soit la base de données utilisée, FireDAC ajoute des fonctionnalités bien pratiques pour gérer les copies de données, les changements de format, l’historique, les pertes de connexion, les mises à jour différées, les transactions, les requêtes multibases… (c) Patrick Prémartin / developpeur-pascal.fr
  • 18. FireDAC : des composants modernes • FireDAC contient de nombreux composants organisés par couche avec comme base un TFDPhysXXXDriver selon la base à utiliser. • FireDAC permet en standard d’accéder à des bases SQL locales, des bases SQL client/serveur et à la base NoSQL MongoDB. • L’éditeur CDATA propose des drivers pour FireDAC afin d’accéder en SQL à des API de nombreux services en ligne sur Internet. La liste à jour est sur https://www.cdata.com/firedac/ (c) Patrick Prémartin / developpeur-pascal.fr
  • 19. FireDAC : des composants modernes • Les composants FireDAC et drivers permettant un accès à des bases de données locales sont disponibles à partir des éditions Professional et Community Edition de Delphi, C++Builder et RAD Studio. • Les composants FireDAC et drivers donnant accès à des bases client/serveur sont disponibles à partir de l’édition Enterprise de Delphi, C++Builder et RAD Studio. • Les composants CDATA sont disponibles sous forme d’abonnement annuel (justifié par la maintenance obligatoire de ces composants en fonction des API des services utilisés). (c) Patrick Prémartin / developpeur-pascal.fr
  • 20. FireDAC : des composants modernes • Il n’est peut-être pas utile de le préciser, mais sait-on jamais ? FireDAC est LE framework de base de données fortement recommandé pour tous les usages dans vos projets. (c) Patrick Prémartin / developpeur-pascal.fr
  • 21. Utiliser FireDAC dans un projet VCL pour Windows (c) Patrick Prémartin / developpeur-pascal.fr
  • 22. A propos de la VCL • La VCL c’est la librairie de composants visuels (et non visuels) historique de Delphi. • C’est un ensemble de composants dédiés aux logiciels devant tourner sous Windows en 16 (dans les vieilles versions de Delphi ou C++Builder), 32 ou 64 bits. • Les composants VCL sont mappés sur des API de Windows et son système de messagerie permettant de gérer les événements du système. (c) Patrick Prémartin / developpeur-pascal.fr
  • 23. A propos de la VCL • La VCL contient 3 types de composants : • Des composants non visuels (accès aux bases de données, capteurs, timer, …) • Des composants visuels (champs de saisie, images, textes, vidéos, …) • Des composants visuels de base de données (les mêmes mais alimentés automatiquement par des ensembles de données) (c) Patrick Prémartin / developpeur-pascal.fr
  • 24. Utiliser FireDAC avec la VCL • FireDAC permet de travailler avec des ensembles de données comme les frameworks plus anciens. On peut donc travailler comme on le fait depuis le BDE. • Pour utiliser les composants FireDAC dans un projet VCL on peut : • Coder les accès à la base de données à la main. • Utiliser les composants visuels de base de données. • Utiliser LiveBindings pour lier des composants visuels classiques à des ensembles de données. (c) Patrick Prémartin / developpeur-pascal.fr
  • 25. Démos (c) Patrick Prémartin / developpeur-pascal.fr
  • 26. Questions / réponses (c) Patrick Prémartin / developpeur-pascal.fr
  • 27. Conclusion (c) Patrick Prémartin / developpeur-pascal.fr
  • 28. En savoir plus sur FireDAC • A travers ce webinaire je ne pouvais pas tout dire sur FireDAC. Voici quelques liens pour en apprendre plus. • Documentation officielle : https://vasur.fr/docfiredac • Le livre « Delphi in Depth: FireDAC » de Cary Jensen : https://amzn.to/2yFfUqS • Les articles consacrés aux bases de données sur mon blog : https://vasur.fr/devpasbdd (c) Patrick Prémartin / developpeur-pascal.fr
  • 29. Conclusion • Ce webinaire et les sources des démos seront rapidement mis à disposition sur le blog https://www.developpeur-pascal.fr • Le prochain webinaire sera consacré à l’utilisation de FireDAC dans les applications multiplateforme développées sous Delphi avec Firemonkey. Retrouvons-nous le 30 octobre. Inscrivez-vous sur https://www.barnsten.com/fr/events (c) Patrick Prémartin / developpeur-pascal.fr