Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Découvrez FireDAC pour FMX

webinaire Delphi

  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Découvrez FireDAC pour FMX

  1. 1. Découvrez FireDAC pour FMX Webinaire du 30 octobre 2018 (c) Patrick Prémartin / developpeur-pascal.fr
  2. 2. Au menu du jour • Introduction • FireDAC en multiplateforme • Utiliser FireDAC dans un projet Firemonkey sous Windows / macOS • Utiliser FireDAC dans un projet Firemonkey sous iOS / Android • Démos • Questions / réponses • Conclusion (c) Patrick Prémartin / developpeur-pascal.fr
  3. 3. Introduction (c) Patrick Prémartin / developpeur-pascal.fr
  4. 4. Introduction • 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 • Voir ou revoir les webinaires précédents https://vasur.fr/webinairesdelphi (c) Patrick Prémartin / developpeur-pascal.fr
  5. 5. A propos de Olf Software • Depuis octobre 2001 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 2018 et référencé sur Datadock, Olf Software s’est recentrée 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 personnalisées sont organisées sur demande. (c) Patrick Prémartin / developpeur-pascal.fr
  6. 6. 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
  7. 7. Les versions de Delphi • Plusieurs licences de Delphi existent (vendu seul ou dans 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 • Pour toutes informations sur les licences et les tarifs contactez la société Barnsten sur https://www.barnsten.com/fr/ (c) Patrick Prémartin / developpeur-pascal.fr
  8. 8. Les versions de Delphi • Firemonkey est disponible avec toutes les versions de Delphi pour Windows, macOS, iOS et Android. • Une version Linux de Firemonkey est disponible auprès de KS Dev sous le nom « FMXLinux » et peut être utilisée dans les versions Enterprise et Architect qui possèdent un compilateur Linux. • FireDAC est disponible dans chaque version avec plus ou moins de fonctionnalités. (c) Patrick Prémartin / developpeur-pascal.fr
  9. 9. Les webinaires précédents • Je participe régulièrement à des webinaires organisés par la société Barnsten. Une page leur est consacrée sur le blog à l’adresse https://vasur.fr/webinairesdelphi • Vous y trouverez les rediffusions en vidéos lorsqu’elles sont disponibles, un PDF de ma présentation, le lien vers les sources des exemples présentés et des informations complémentaires. (c) Patrick Prémartin / developpeur-pascal.fr
  10. 10. FireDAC en multiplateforme (c) Patrick Prémartin / developpeur-pascal.fr
  11. 11. FireDAC en multiplateforme • Pas de grande différence avec l’utilisation en VCL • Côté code source les unités de FireDAC commencent par « FireDAC. » • Certaines sont liées à l’environnement d’exécution, par exemple celles qui gèrent les curseurs dans les ensembles de données : • FireDAC.FMXUI.Wait pour les projets Firemonkey • FireDAC.VCLUI.Wait pour les projets VCL • FireDAC.ConsoleUI.Wait pour les projets sans interface graphique (c) Patrick Prémartin / developpeur-pascal.fr
  12. 12. FireDAC en multiplateforme • Quand on utilise FireDAC dans une unité sans fiche ou dans un projet en console il n’est pas aisé de se souvenir de toutes les unités utiles. • Astuce : • Créez une fiche (VCL ou FMX) ou un TDataModule. • Placez les composants qui vous intéressent dessus. • Faites un simple Ctrl + S (et annulez l’enregistrement si vous n’en avez pas besoin). • L’EDI aura ajouté les unités nécessaires au USES de l’unité. • Vous n’avez plus qu’à faire un copier/coller en pensant à adapter les noms d’unités ayant « VCL » ou « FMX » dedans. • Bien entendu ça marche pour tout, pas que pour retrouver les (nombreuses) unités liées à FireDAC. (c) Patrick Prémartin / developpeur-pascal.fr
  13. 13. FireDAC en multiplateforme • Dans Firemonkey, contrairement à la VCL, nous n’avons pas de composants verrouillés sur des ensembles de données (les TDBxxx). Nous utilisons donc LiveBindings pour les alimenter automatiquement ou devons le coder à la main dans les programmes. • Petit point négatif : tout ne se fait pas tout seul à partir des propriétés. Il faut savoir faire un clic droit et des glisser/déplacer à la souris. • Gros point positif : tous les composants sont utilisables en liaison avec des ensembles de données. (c) Patrick Prémartin / developpeur-pascal.fr
  14. 14. FireDAC avec FMX: Windows et macOS (c) Patrick Prémartin / developpeur-pascal.fr
  15. 15. FireDAC avec FMX: Windows et macOS • A l’heure actuelle (en version Delphi 10.2.3 Tokyo) Embarcadero fournit ces compilateurs « desktop » accessibles avec la version standard de Firemonkey: • Windows en 32 bits • Windows en 64 bits • macOS en 32 bits La version 64 bits nécessaire pour diffuser des logiciels sur le Mac App Store d’Apple arrivera prochainement d’après la ROADMAP d’août 2018. (c) Patrick Prémartin / developpeur-pascal.fr
  16. 16. FireDAC avec FMX: Windows et macOS • Pour un logiciel sous Windows ou macOS toutes les bases de données sont accessibles (selon la version de Delphi pour la disponibilité des drivers). • En local on peut utiliser SQLite, IBLite, IBToGo ou Interbase Desktop. • En client / serveur on peut utiliser les classiques MySQL, SQL Server, Oracle et MongoDB comme base NoSQL. • Bien entendu l’énumération des bases n’est pas restrictive, de nombreux autres drivers sont fournis ou disponibles sur le marché (notamment DB2/400 pour les utilisateurs d’AS/400). (c) Patrick Prémartin / developpeur-pascal.fr
  17. 17. FireDAC avec FMX: Windows et macOS • Pour les logiciels « desktop » j’utilise la plupart du temps SQLite lorsque je n’ai pas de besoins de stockage de données à distance ni d’accès concurrents sur les mêmes données. • Lorsqu’il faut aller au delà d’une base de données par poste de travail, je m’adapte en fonction de l’environnement informatique du client et de ses possibilités budgétaires. (c) Patrick Prémartin / developpeur-pascal.fr
  18. 18. FireDAC avec FMX: iOS et Android (c) Patrick Prémartin / developpeur-pascal.fr
  19. 19. FireDAC avec FMX: iOS et Android • A l’heure actuelle (en version Delphi 10.2.3 Tokyo) Embarcadero fournit ces compilateurs « mobiles » accessibles avec la version standard de Firemonkey: • iOS en 32 bits pour pouvoir compiler sur de vieux appareils • iOS en 64 bits • Android pour processeurs ARM 32 bits Une version 64 bits est sur la ROADMAP. Une version ANDROID pour processeurs INTEL a aussi été évoquée mais n’est pas sur la ROADMAP pour le moment. (c) Patrick Prémartin / developpeur-pascal.fr
  20. 20. FireDAC avec FMX: iOS et Android • En environnement mobile il n’est pas possible de faire des accès client/serveur en direct car les drivers des bases de données de ce type ne sont pas disponibles. On doit donc ruser. • On peut utiliser des bases locales comme SQLite, IBLite et IBToGo. • On peut utiliser DataSNAP grâce à ses fonctionnalités client/serveur et ainsi accéder à un serveur distant développé sous Delphi qui aurait lui-même accès à toutes les bases de données du marché via FireDAC. (c) Patrick Prémartin / developpeur-pascal.fr
  21. 21. FireDAC avec FMX: iOS et Android • Dans les applications mobiles nécessitant un stockage local de données je passe systématiquement par SQLite. Il est disponible en standard sur tous les systèmes d’exploitation et fonctionnement plutôt bien. • Les seuls cas où j’ai eu à passer par IBLite ou IBToGo étaient des environnements où Interbase était déjà utilisé en client/serveur. Avoir la même base de données partout est plus simple pour la maintenance, le partage de code et les habitudes de développement. (c) Patrick Prémartin / developpeur-pascal.fr
  22. 22. FireDAC avec FMX: iOS et Android • Dans les cas d’applications devant être synchronisées avec une base de données extérieure je fais généralement un cache des données utiles en SQLite que je synchronise « à la main » ou des accès distants directs par l’intermédiaire de DataSnap. • Dans les cas d’accès à des données sur Internet, l’utilisation d’une API REST en https avec des échanges de données JSON (de préférence aussi chiffrés) reste le plus simple. (c) Patrick Prémartin / developpeur-pascal.fr
  23. 23. Démos (c) Patrick Prémartin / developpeur-pascal.fr
  24. 24. Questions / réponses (c) Patrick Prémartin / developpeur-pascal.fr
  25. 25. Conclusion (c) Patrick Prémartin / developpeur-pascal.fr
  26. 26. 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
  27. 27. Conclusion • Ce webinaire et les sources des démos seront rapidement mis à disposition sur le blog https://www.developpeur-pascal.fr • Les prochains événements en live : • Conférence sur C++Builder le 14 novembre à Paris. • Conférence de lancement de RAD Studio 10.3 Rio le 15 novembre à Paris. • Prochain webinaire le 25 novembre 2018 consacré à l’échange et la synchronisation de données. • Inscrivez-vous depuis https://www.barnsten.com/fr/events (c) Patrick Prémartin / developpeur-pascal.fr

×