Aller au contenu principal
HPO Software Guides étape par étape pour créer vos bases de données 4D et applications low-code — de votre première table à une application métier opérationnelle.

Certains liens de ce site sont des liens d'affiliation : si vous effectuez un achat via ceux-ci, nous pouvons percevoir une commission sans frais supplémentaires pour vous. Cela n'influence jamais nos recommandations. Consultez notre divulgation d'affiliation pour plus de détails. Divulgation d'affiliation.

Bases de l'apprentissage de la 4e dimension

Cette série est conçue pour aider ceux qui viennent de FileMaker Pro ou qui ont une certaine expérience en conception de bases de données avec une autre application. Dans cette série, chaque fois que « 4D » est utilisé, il fait référence à « 4th Dimension » et chaque fois que « FMP » est utilisé, il fait référence à « FileMaker Pro ».

Le plus gros obstacle en venant du monde de FMP est peut-être que 4D est fondamentalement différent. La philosophie de base du programme est différente. Les termes sont différents. Je vais essayer de familiariser le lecteur avec 4D en expliquant comment les choses se rapportent entre 4D et FMP. Cependant, certains de ces éléments sont très difficiles, voire impossibles, à relier car ils sont propres à chaque produit.

Les références pour FMP concerneront la version 5.0.x et l’édition Standard de 4D version 4.6.x.

Remarque : Le prix de détail suggéré actuel pour FMP 5.0 est de 249 $ et pour l’édition Standard de 4D de 349 $. 4D et FMP sont tous deux multiplateformes. Les deux fonctionnent sur les systèmes Macintosh et Windows. Les deux ont des capacités Web.

La Partie I fournira un peu d’historique pour FileMaker et 4D. Il peut être intéressant de noter que 4D et FileMaker sont apparus sur Macintosh et à peu près à la même époque (milieu des années 80). La Partie I couvrira également, sans trop de détails, les éléments suivants :

  • Configuration système requise
  • Structures du programme
  • Différences de mise en réseau
  • Différences dans les versions runtime
  • Compilateur
  • Hébergement Web
  • Graphiques de données
  • Plug-ins
  • Outils/Utilitaires
  • Ressources
  • Autres URL 4D

Remarque : L’ordre et le contenu suivants de chaque Partie sont provisoires.

Connexes : — Une interface simple sous forme de feuille de calcul reposant sur une véritable base de données relationnelle, avec des automatisations, des vues et des interfaces partageables..

  • La Partie II couvrira la création d’un programme 4D simple
  • La Partie III couvrira les menus personnalisés
  • La Partie IV couvrira les méthodes
  • Parties supplémentaires à déterminer.

Points clés à retenir

  • 4D et FileMaker Pro sont tous deux issus de la scène des bases de données Macintosh du milieu des années 1980, mais ils résolvent les mêmes problèmes avec des architectures très différentes.
  • La partie la plus difficile du passage de FMP à 4D n’est pas la syntaxe — c’est la philosophie sous-jacente sur la façon dont les données, la structure et le code sont séparés.
  • 4D expose un véritable moteur relationnel, un langage de programmation (le langage 4D) et un compilateur, alors que FMP mettait historiquement l’accent sur un modèle à fichier unique piloté par la mise en page.
  • La terminologie diffère fortement entre les deux produits, l’apprentissage du vocabulaire 4D est donc un prérequis à la lecture de toute documentation 4D.
  • La prise en charge multiplateforme et la capacité Web existent dans les deux produits, mais la manière dont chacun les propose — runtime, compilateur et modèle de plug-in — diffère considérablement.
  • Cette Partie I est une carte du terrain ; la construction pratique commence dans la Partie II.

Pourquoi 4D semble différent de FileMaker Pro

Si vous avez passé des années dans FileMaker Pro, votre modèle mental d’une base de données est probablement construit autour d’un seul fichier contenant des tables, des mises en page, des scripts et des relations, tout au même endroit. Vous ouvrez le fichier, vous voyez une mise en page, vous cliquez dans un champ et vous travaillez. Ce modèle est pratique et c’est l’une des raisons pour lesquelles FMP est devenu si populaire auprès des petites équipes et des développeurs citoyens.

4D vous demande de penser différemment. Dans 4D, la structure de la base de données (tables, champs, relations) est définie dans un contexte structurel distinct des formulaires (l’interface utilisateur) et des méthodes (le code). Cette séparation est plus proche de la manière dont les bases de données relationnelles client/serveur traditionnelles sont organisées, et c’est le changement conceptuel le plus important qu’un développeur FileMaker doit opérer.

Un moyen utile de cadrer la différence :

Si vous faites du shopping : — Un créateur d'applications low-code qui se connecte à la suite Zoho plus large et propose des tarifs par utilisateur plutôt que par application..

  • FileMaker Pro a tendance à être centré sur le document. Le fichier est l’application.
  • 4D a tendance à être centré sur la structure. La structure définit le modèle de données, et l’application est construite dessus avec des formulaires, des méthodes et des menus.

Aucune des deux approches n’est « meilleure » dans l’abstrait. FMP est optimisé pour une itération rapide par un seul développeur. 4D est optimisé pour des applications plus volumineuses, plus structurées et plus programmables — c’est pourquoi il a attiré les développeurs qui avaient besoin d’un véritable langage de programmation et d’un compilateur.

Une courte histoire partagée

Il convient de s’arrêter sur le fait que 4D et FileMaker sont nés sur Macintosh et à peu près au même moment, au milieu des années 1980. Ce n’est pas une coïncidence. Le Macintosh original a créé un nouveau marché pour les outils de base de données de bureau qui pouvaient être utilisés par des particuliers et de petites entreprises plutôt que par des opérateurs d’ordinateurs centraux.

FileMaker a commencé comme un produit Macintosh et a ensuite été acquis et développé par Claris (une spin-off d’Apple), c’est pourquoi tant d’utilisateurs Mac de longue date associent FileMaker à l’écosystème Apple. 4D a été développé par ACI (ACI US aux États-Unis) et est devenu un environnement de développement multiplateforme avec son propre langage et son propre compilateur.

Les deux produits ont survécu à la transition du Mac OS classique vers Windows et vers les systèmes d’exploitation modernes, et tous deux ont ajouté des capacités Web. Cette lignée partagée est la raison pour laquelle un développeur FileMaker peut souvent lire la documentation 4D et reconnaître les problèmes résolus, même lorsque les solutions semblent peu familières.

Configuration système requise et réalité multiplateforme

4D et FMP sont tous deux multiplateformes. Les deux fonctionnent sur les systèmes Macintosh et Windows. Les deux ont des capacités Web. Cela est partagé.

Là où ils divergent, c’est dans ce que signifie « multiplateforme » pour le développeur. Dans un monde FileMaker, vous développez généralement sur une plate-forme et le même fichier s’ouvre sur l’autre, avec des mises en page qui s’adaptent. Dans 4D, le développement multiplateforme est plus explicite : vous construisez une application compilée ou interprétée qui doit être déployée sur chaque plateforme cible, et vous devez être conscient des comportements, des chemins de fichiers et des conventions d’interface spécifiques à la plateforme.

Connexes : — Un générateur de base de données sans code destiné aux portails, aux annuaires et aux outils internes, avec une tarification forfaitaire au lieu de frais par utilisateur..

Conseils pratiques pour le développeur venant de FMP :

  • Décidez tôt de vos cibles de déploiement. Si vous déployez uniquement sur une seule plate-forme, vous pouvez ignorer de nombreuses nuances multiplateformes. Si vous déployez sur les deux, planifiez-le dès le premier formulaire.
  • Testez sur “l’autre” plate-forme avant d’être trop avancé dans le projet. Les problèmes multiplateformes sont peu coûteux à résoudre tôt et coûteux à résoudre tardivement.
  • Comprenez le modèle d’exécution. 4D fait la distinction entre l’environnement de développement et le runtime déployé, un concept que les développeurs FileMaker rencontrent souvent pour la première fois ici.

Structures du programme : comment les éléments s’emboîtent

C’est la section qui mérite le plus une lecture attentive, car c’est là que la différence philosophique devient concrète.

En 4D, les principales pièces structurelles sont :

Notre sélection : — La plateforme de base de données relationnelle de longue date pour les équipes qui ont besoin d'applications personnalisées sur ordinateur, Web et mobile à partir d'un seul fichier..

  • La structure — la définition des tables, des champs et des relations. C’est votre modèle de données.
  • Les formulaires — l’interface utilisateur. Les formulaires sont attachés aux tables et sont l’équivalent des mises en page FileMaker, mais ils sont plus explicitement séparés des données.
  • Les méthodes — le code. 4D dispose d’un langage de programmation complet, et les méthodes sont l’endroit où réside la logique.
  • Les menus — menus personnalisés, que la troisième partie de cette série couvrira en détail.

Dans FileMaker Pro, ces préoccupations sont plus mélangées. Une mise en page peut contenir à la fois la présentation et la logique (via des déclencheurs de script et des calculs), et le fichier lui-même est le conteneur de tout.

La conséquence pratique est qu’en 4D, vous passerez plus de temps à concevoir avant de construire. Cela semble plus lent au début et plus rapide plus tard. FileMaker récompense le fait de se lancer directement ; 4D récompense la planification de la structure en premier.

Une comparaison approximative :

PréoccupationFileMaker Pro (5.0.x)4D (Standard Edition 4.6.x)
Modèle de donnéesTables et relations à l’intérieur du fichierStructure définie séparément de l’UI
Interface utilisateurMises en pageFormulaires
LogiqueScripts et calculsMéthodes (langage complet)
MenusMenus intégrés, personnalisation limitéeMenus personnalisés (traités dans la partie III)
DéploiementOuvrir le fichierOptions de runtime et de déploiement compilé
ExtensionPlug-insPlug-ins

Différences de mise en réseau

La mise en réseau est l’un des domaines dans lesquels les deux produits divergent de manière importante pour les déploiements réels.

Le modèle de mise en réseau de FileMaker Pro repose sur l’ouverture d’un fichier partagé sur un réseau, avec FileMaker Server ou le partage peer-to-peer gérant l’accès simultané. Il est conçu pour être simple : vous partagez un fichier, d’autres l’ouvrent.

Le modèle réseau de 4D reflète son héritage client/serveur. Les applications 4D sont généralement déployées en tant que client se connectant à un processus serveur, et le développeur a plus de contrôle — et plus de responsabilité — sur la façon dont les données circulent entre eux. Cela est important car cela affecte le réglage des performances, le comportement de verrouillage des enregistrements et la façon dont vous concevez des formulaires qui affichent de grands jeux d’enregistrements.

Pour le développeur venant de FMP, les questions clés à se poser sont :

  • Combien d’utilisateurs simultanés se connecteront réellement ?
  • L’application fonctionnera-t-elle sur un LAN, un WAN ou l’Internet public ?
  • Quelle quantité de données chaque formulaire va-t-il extraire sur le réseau, et cela peut-il être réduit ?

Ce sont des questions que les développeurs FileMaker peuvent souvent reporter. En 4D, elles ont tendance à faire surface plus tôt.

Runtimes, le compilateur et pourquoi ils sont importants

Deux des concepts 4D les plus distinctifs — et deux des moins familiers aux développeurs FileMaker — sont le runtime et le compilateur.

Un runtime est une version de votre application qui peut être distribuée aux utilisateurs ne possédant pas l’environnement de développement 4D. C’est ainsi que les développeurs 4D livrent des applications autonomes. FileMaker a un concept analogue avec les solutions runtime, mais le modèle runtime de 4D est plus central dans la manière dont le produit est utilisé commercialement.

Le compilateur prend votre code 4D interprété et le compile sous une forme plus rapide et plus protégée. La compilation n’est pas seulement une question de vitesse ; il s’agit également de protéger votre code source lorsque vous distribuez une application. Pour les développeurs qui n’ont travaillé que dans FileMaker, où le fichier est l’application et la source est effectivement le fichier, il s’agit d’une idée véritablement nouvelle.

Comment décider s’il faut compiler :

  • Compilez lorsque vous distribuez aux utilisateurs finaux et que vous souhaitez des performances et une protection du code source.
  • Restez en mode interprété pendant le développement, où le cycle d’édition-test plus rapide importe plus que la vitesse brute.
  • Planifiez la compilation tôt, car le code qui se compile proprement est généralement un code mieux structuré.

Hébergement Web, graphiques de données et plug-ins

Les deux produits disposent de fonctionnalités Web, mais ils abordent le Web différemment. La publication Web de FileMaker mettait historiquement l’accent sur la diffusion de mises en page dans un navigateur. Les fonctionnalités Web de 4D sont liées à son langage et à son serveur, ce qui donne aux développeurs plus de contrôle programmatique sur ce qui est servi et comment.

Le graphisme de données (data charting) est un autre domaine dans lequel les développeurs 4D ont historiquement eu recours à des plug-ins et à des outils externes pour générer des graphiques et des rapports. Si la création de graphiques est importante pour votre application, évaluez-la dès le début plutôt que de supposer qu’elle est intégrée.

Les plug-ins existent dans les deux écosystèmes. Dans FileMaker, les plug-ins étendent le moteur de calcul et de script. Dans 4D, les plug-ins étendent le langage et peuvent s’ancrer profondément dans l’application. Le conseil pratique est le même dans les deux mondes : préférez les fonctionnalités intégrées là où elles existent, et traitez les plug-ins comme des dépendances que vous devez maintenir entre les versions.

Outils, utilitaires et ressources

Quelques habitudes séparent les développeurs qui prospèrent avec 4D de ceux qui ont des difficultés :

  • Lisez d’abord la documentation officielle. La documentation de 4D est la source faisant autorité pour le langage et le modèle de structure.
  • Utilisez la communauté des développeurs. Les listes de discussion et les groupes d’utilisateurs étaient, et restent, le lieu où résident les connaissances pratiques de 4D.
  • Conservez une bibliothèque personnelle de méthodes. Le code 4D étant basé sur du texte et réutilisable, une bibliothèque de méthodes bien organisée s’avère payante d’un projet à l’autre.
  • Apprenez délibérément le vocabulaire. Des termes comme structure, formulaire, méthode et runtime ont des significations spécifiques dans 4D qui diffèrent de leurs homologues FileMaker.

Pour un aperçu plus large du modèle relationnel qui sous-tend les deux produits, le travail original de E. F. Codd sur les bases de données relationnelles reste la référence canonique, et l’article Wikipédia sur le modèle relationnel est un point de départ raisonnable.

Pour l’histoire de la plate-forme Macintosh qui a donné naissance aux deux produits, l’article Wikipédia sur le Macintosh constitue un contexte utile. Pour la terminologie générale des bases de données, l’article Wikipédia sur les systèmes de gestion de bases de données constitue une orientation utile.

Remerciements

Un merci spécial à :

  • Brendan Coveney, Président ACI US, pour son aide concernant l’histoire de 4th Dimension.
  • Will Porter (wporter@polytrope.com) de POLYTROPE SOLUTIONS, Houston, Texas, The XXII Group, pour son aide à la relecture et pour m’avoir maintenu sur le droit chemin.
  • James Fortier (jim40er@halcyon.com) pour avoir fourni certaines ressources et aidé à relire le document.
  • Douglas Blew (fridays@impluse.net) pour ses suggestions.
  • Jim Staples (jstaples@acius.com) d’ACI US, Inc., Macom/Press Relations, pour la relecture et ses commentaires.
  • David Graham (davidgraham@mac.com) pour la conception des mises en page Web et PDF de ce guide.

Questions fréquemment posées

4D est-il fondamentalement identique à FileMaker Pro ?

Non. Les deux sont des produits de bases de données multiplateformes nés sur Macintosh au milieu des années 1980 et tous deux disposent de capacités Web, mais leurs philosophies sous-jacentes diffèrent. FileMaker Pro est centré sur le document, où le fichier est l’application, tandis que 4D sépare la structure des données, les formulaires et les méthodes en préoccupations distinctes. Cette séparation explique pourquoi 4D ressemble davantage à un environnement de développement traditionnel.

Faut-il connaître un langage de programmation pour utiliser 4D ?

On peut construire des choses simples sans programmation approfondie, mais la vraie puissance de 4D réside dans son langage et ses méthodes. En venant de FileMaker, où les scripts et les calculs couvrent beaucoup de terrain, vous constaterez que 4D attend de vous que vous écriviez plus de code pour des fonctionnalités équivalentes. Le gain est un meilleur contrôle et une meilleure structure pour les applications plus volumineuses.

Qu’est-ce qu’un runtime 4D et pourquoi est-ce important ?

Un runtime est une version distribuable de votre application que les utilisateurs peuvent exécuter sans posséder l’environnement de développement 4D complet. C’est important car c’est ainsi que les développeurs 4D livrent des applications autonomes aux utilisateurs finaux. FileMaker a un concept similaire, mais dans 4D, le modèle runtime est plus central pour le déploiement commercial.

Pourquoi compiler mon application 4D ?

La compilation améliore les performances et protège votre code source lorsque vous distribuez l’application. Pendant le développement, vous restez généralement en mode interprété pour un cycle d’édition-test plus rapide, et vous compilez lorsque vous êtes prêt à livrer. Le code qui se compile proprement a également tendance à être mieux organisé, il vaut donc la peine de planifier la compilation tôt.

Quelle est la différence de mise en réseau entre 4D et FileMaker Pro ?

La mise en réseau de FileMaker Pro repose sur le partage d’un fichier, avec FileMaker Server ou le partage peer-to-peer gérant l’accès simultané. La mise en réseau de 4D reflète son héritage client/serveur, donnant aux développeurs plus de contrôle et plus de responsabilités sur la façon dont les données circulent entre le client et le serveur. Cela affecte l’optimisation des performances, le verrouillage des enregistrements et la façon dont vous concevez des formulaires qui affichent de grands ensembles d’enregistrements.

Que couvrira la deuxième partie de cette série ?

La deuxième partie couvrira la création d’un programme 4D simple, en parcourant le processus de la structure au formulaire, puis à la méthode. La partie III couvrira les menus personnalisés et la partie IV couvrira les méthodes plus en profondeur. Des parties supplémentaires restent à déterminer, et l’ordre et le contenu de chaque partie sont provisoires.


Copyright © 1994-2000 HPO Soft. Tous droits réservés.



Essayez FileMaker gratuitement pendant 45 jours

La plateforme de base de données relationnelle de longue date pour les équipes qui ont besoin d'applications personnalisées sur ordinateur, Web et mobile à partir d'un seul fichier.