4e Dimension (langage)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir Quatrième dimension.
4e Dimension
Image illustrative de l'article 4e Dimension (langage)
Logo

Développeur 4D
Dernière version 4D v14
Environnement Microsoft Windows, Mac OS X
Type SGBDR
Politique de distribution vendu dans le commerce
Licence Propriétaire
Site web www.4d.com

4e Dimension (ou 4D) est un système de gestion de base de données équipé d'un langage de programmation de quatrième génération.

Historique[1][modifier | modifier le code]

Le logiciel 4D a été créé par Laurent Ribardière en 1984 et est l'un des premiers (sinon le premier) systèmes de base de données à voir le jour sur la plateforme Apple Macintosh[2]. Cette particularité lui a d'ailleurs longtemps "collé à la peau", mais en 1995 4D devient multi-plateforme et fonctionne également sous Microsoft Windows.

Année Version Remarques
1984 ABCBase
1985 4D v1
1986 4D v2
1987 4D v3
1989 4D v4 Utilisation multiposte - Compiler
1992 4D v5 Environnement client/serveur intégré
1995 4D v5.5 Multi-plateforme Mac OS et Windows
1997 4D v6 Serveur Web intégré
1999 4D 6.5 4D 6.5.9r2 est la dernière version de cette ligne
2000 4D 6.7 4D 6.7.4 est la dernière version de cette ligne
2001 4D 6.8 Certification Mac OS X (6.8.5) ; la version 6.8.6 est la dernière version de cette ligne.
2003 4D 2003 XML, Web Services et Compilateur intégré ; la version 2003.8r2 est la dernière version de cette ligne.
2004 4D 2004 Interface revue ; intégration des commandes ODBC haut niveau, 4D Customizer, 4D Backup et 4D Engine ; la version 2004.8 est la dernière version de cette ligne.
2007 4D v11 SQL Nouveau moteur de base de données, SQL intégré, support Unicode, gestion SVG, centre de maintenance intégré, zone web ; 4D v11 SQL Release 9 (11.9) est la dernière version de cette ligne.
2010 4D v12 Nouvelles fonctionnalités, améliorations de l'environnement de développement, multibases, système intégré de synchronisation entre plusieurs bases, support PHP ; 4D v12.4 est la dernière version de cette ligne.
2012 4D v13 Nouveau serveur HTTP multithread, gestion des sessions automatique, nouveau client HTTP extensible, intégration de webkit et support étendu de Javascript, list box enrichie, gestion de documents externes.
2014 4D v14 Création de Web apps avec 4D Mobile: Applications multiplateforme disponibles sur Mobile, Tablette et tout type de navigateur. Objets structurés JSON, vues SQL, nouveaux outils de maintenance et de monitoring.

Logiciel 4D[modifier | modifier le code]

4D est un Système de Gestion de Base de Données Relationnelle (SGBDR) disposant d'un langage de programmation de la quatrième génération (L4G). Environnement de développement intégré (EDI ou IDE en anglais), 4D intègre un compilateur, un déboggeur, un système complet et automatisé de sauvegarde et de réplication, un serveur Web, un serveur et client de services web, un moteur d'exécution mono-poste et client-serveur multiplate-forme. En 2009, 4D s'est vu enrichi de la suite 4D Web 2.0 Pack, intégrant le plugin 4D Live Window et le composant 4D Ajax Framework.

4D comporte de nombreux plug-ins :

  • de productivité : 4D View (tableur), 4D Write (traitement de texte), 4D Chart (graphes)
  • de connectivité : 4D ODBC, 4D for MySQL, 4D for ADO, 4D for OCI, 4D for PostgreSQL, 4D Internet Commands (ftp, courriel, http), ODBC Driver for 4D, JDBC Driver for 4D, …
  • d'extensions : 4D Pack (extensions du langage), 4D Live Window (affichage de documents), 4D Ajax Framework (composant), 4D Ajax for Dreamweaver (plugin pour Adobe Dreamweaver), 4D for Flex (bibliothèques pour application cliente Flex), 4D Plugin SDK (développement de plugin), …


Le logiciel 4D possédait traditionnellement 3 modes :

  • Le mode structure (ou mode Design) permettant de créer des formulaires et des méthodes, mais aussi de modifier la structure de la base de données, de compiler, de débugger.
  • Le mode utilisation, permettant le lancement à l'unité des programmes réalisés et la modification du contenu de la base de données.
  • Le mode dit menus créés dans lequel les utilisateurs peuvent visualiser une application sur-mesure entièrement « habillée ».

Depuis la version 4D v11 SQL, les modes Structure et Utilisation ont fusionné en un seul mode Développement. Le mode Menus Créés est devenu le mode Application.

4D en quelques notions[modifier | modifier le code]

  • Langage propriétaire de haut niveau indépendant du système d’exploitation
  • Multi-plateforme : Mac OS X (y compris MacIntel depuis la version 4D 2004.5) et Windows (certification Vista depuis la version 4D 2004.6 et Windows Server 2008 depuis la version 4D v11 SQL 11.3, certification Windows 7 depuis la version 4D V11.5)
  • Solutions mono-poste et client/Serveur
  • Architecture extensible : plug-ins, bibliothèques d’objets, composants
  • Possibilité de développer en client/Serveur (développement collaboratif)

Depuis 4D v11 SQL :

  • Moteur SQL natif
  • Prise en charge du SVG
  • Intégration d’Unicode
  • Support étendu de ODBC, XML et des Web Services SOAP

Fonctionnalités principales[modifier | modifier le code]

Points forts de 4D V11 SQL[modifier | modifier le code]

  • Que ce soit pour des projets élémentaires en local ou des solutions en client-serveur avec de nombreux clients, l'évolution se fait en douceur : sans changer une ligne de code, le moteur de 4D prenant tout en charge. La version serveur de la version 11 donne d'excellents résultats en termes de réactivité.
  • Multiplateforme : un même programme peut être porté de Mac OS à MS Windows (et vice-versa) sans changer une seule ligne de code. La compatibilité Linux est espérée
  • Toute l'administration des bases et leur configuration sont centralisées en un seul point (le Centre de Support et Maintenance)
  • Les sauvegardes sont soit déclenchables dans le code soit programmables à heures régulières
  • l'indexation très puissante permet de faire des recherches en full-text (plein-texte)
  • 4D est conforme à toutes les normes du marché :
    • SQL2 (la dernière) : la grande majorité des commandes existantes dans ce langage sont implantées dans 4D
    • XML : 4D est "orientée" XML. Les données et la structure sont directement exportables en XML pour une réutilisation avec d'autres produits.
    • Webservices : un assistant permet d'utiliser simplement des Webservices.
    • Web 2.0 : un framework Ajax a été développé afin de simplifier l'intégration des données issues de 4D à des pages web dynamiques
    • Flex : des bibliothèques 4D pour Flex permettent de connecter les données 4D via SQL dans une application cliente riche
    • Oracle : via le driver ODBC, 4D peut communiquer avec les bases oracle
    • UTF8
  • Un traitement de texte (4D Write) et un tableur (4D View) sont intégrés en natif dans 4D. Il existe en plus des objets 4D qui permettent de communiquer directement avec les applications de la suite Office.
  • Un développement complet peut être réutilisé très simplement dans un autre par simple glisser-déposer, grâce à la prise en compte de la programmation orientée composants
  • 4D est à la fois serveur de données, serveur Web, serveur de webservices et serveur SQL.
  • le langage de programmation de 4D est tokennisé : un développement fait avec des commandes en français sera automatiquement traduit en anglais, en allemand, en espagnol ou en japonais selon la version de 4D utilisée.
  • un framework permet de développer des pages web spécifiquement adaptées à l'iPhone
  • Le déploiement client/serveur est d'une grande simplicité.

Compatibilité[modifier | modifier le code]

Systèmes d’exploitation / Version 4D v14 v14 serveur v13 v12 v11 2004
Windows 8.1 64 bits Certifié (32 bits) Certifié Certifié Non Non Non Non Non Non
Windows 8.1 32 bits Certifié Compatible Certifié Non Non Non Non Non Non
Windows 8 64 bits Certifié (32 bits) Certifié Certifié Compatible Non Non Non Non
Windows 8 32 bits Certifié Compatible Certifié Compatible Non Non Non Non
Windows 7 64 bits Certifié (32 bits) Certifié Certifié Certifié Certifié Non Non
Windows 7 32 bits Certifié Compatible Certifié Certifié Certifié Non Non
Windows Vista Non Non Non Non Certifié Certifié Certifié Certifié
Windows XP Non Non Non Non Certifié Certifié Certifié Certifié
Windows Server 2012 R2 Certifié (32 bits) Compatible Certifié Non Non Non Non Non Non
Windows Server 2012 Certifié (32 bits) Compatible Certifié Compatible Non Non Non Non
Windows Server 2008 R2 Certifié (32 bits) Compatible Certifié Non Non Non Non Non Non
Windows Server 2008 64 bits Compatible Compatible Certifié Certifié Certifié Non Non
Windows Server 2008 32 bits Non Non Non Non Certifié Certifié Certifié Non Non
Windows Server 2003 Non Non Non Non Certifié Certifié Certifié Certifié
Windows Server 2000 Non Non Non Non Non Non Non Non Non Non Certifié
Mac OS X 10.9 Certifié Certifié Certifié Non Non Non Non Non Non
Mac OS X 10.8 Certifié Certifié Certifié Certifié Non Non Non Non
Mac OS X 10.7 Certifié Certifié Certifié Certifié Non Non Non Non
Mac OS X 10.6 Non Non Non Non Certifié Certifié Certifié Non Non
Mac OS X 10.5 Non Non Non Non Non Non Compatible Certifié Certifié
Mac OS X 10.4 Non Non Non Non Non Non Non Non Certifié Certifié
Mac OS X 10.3 Non Non Non Non Non Non Non Non Non Non Certifié
Mac OS X 10.2 Non Non Non Non Non Non Non Non Non Non Compatible

Limites[modifier | modifier le code]

  • La plateforme 4D dont l'architecture intégrée permet une grande simplicité de développement ne destine pas 4D au développement d'applications de gestion visant à supporter plusieurs milliers d'utilisateurs concurrents intensifs.
  • Le langage de programmation de 4D n'est pas orienté objet.
  • 4D Server pour Mac n'est pas disponible à ce jour en version 64 bits. Seule 4D Server pour Windows est disponible en version 32 et 64 bits (depuis la version 12 de 4D). Les versions 4D Server 32 bits ne pouvant adresser plus de 4 Go de mémoire RAM, elles peuvent pénaliser les performances des applications[3] lors de la manipulation de grosses bases de données ou de la connexion simultanée de nombreux utilisateurs en mode client-serveur.
  • Le langage 4D évolue à chaque version, mais n'offre pas nécessairement de compatibilité descendante.  Ainsi, il n'est pas possible pour un programmeur de compiler une application pour une version antérieure de 4D.  Si une application doit être développée pour plusieurs versions de 4D, elle devra donc être programmée et maintenue de façon indépendante dans chacune de ces versions.  Cette limitation est particulièrement contraignante lorsqu'une application doit être disponible sous plusieurs systèmes d'exploitation (ex: Windows XP et Windows 8).

Liens externes[modifier | modifier le code]

Notes et références[modifier | modifier le code]

  1. Voir Généalogie des SGBDR
  2. Voir les articles : DE PAUL OTLET A INTERNET, extrait : "Logiciel de base de données : 4D, développé par le Français Alain Ribardière ; il deviendra le standard SGBD pour les Macintosh d'Apple" / L'aventure Apple, extrait : "Heureusement pour Apple, lors de la sortie du Mac Plus, beaucoup de logiciels avaient fait leur apparition : Word 3, 4d, Excel ou Cricket Draw." / L'histoire Apple, extrait : "En même temps que ce MacPlus arrivèrent de nombreuses applications comme Word 3, Excel ou 4D."
  3. Présentation des avantages de la version 64 bits de 4D Server v12 Windows sur le site officiel 4D Consulté le 06-08-2011