Auteur: Nicolas Brachfogel

Nicolas Brachfogel
- Product Owner & Senior Developer - Nicolas Brachfogel a rejoint 4D en 2017 en tant que développeur senior (4D Server et networking) et en tant que Product Owner pour gérer la mise en production d'Apple Silicon. Il est chargé de rédiger les user stories et de les traduire en spécifications fonctionnelles, ainsi que de s'assurer que les implémentations des fonctionnalités répondent aux besoins des clients. Diplômé de l'Institut Supérieur d'Informatique Appliquée (INSIA), Nicolas a commencé sa carrière en tant que développeur de logiciels en 2001. Après plusieurs années de programmation en Java et C++, il s'est spécialisé dans le développement client-serveur pour des sociétés de jeux vidéo. En tant que développeur/architecte serveur, il a travaillé avec succès sur les architectures serveur de nombreux jeux (Dofus Arena, Drakerz, Trivial Pursuit Go !).
Produit blank

QUIC est désormais au niveau de fonctionnalité de ServerNet

La couche réseau QUIC prend désormais en charge autant de fonctionnalités que la couche réseau ServerNet. Avec 4D 20 R5, nous avons ajouté la prise en charge de l’IPv6, du broadcast et du SSO sous Windows.

Bien entendu, nous continuerons à l’améliorer dans les prochaines versions pour en faire la meilleure couche réseau que 4D ait jamais eue.

Mais pour l’instant, permettez-moi d’en dire un peu plus sur les dernières fonctionnalités que nous avons ajoutées.

Produit blank

Classes partagées

Voulez-vous un moyen simplifié d’utiliser des objets partagés, en suivant la syntaxe classique des objets et en appelant automatiquement use/end use lorsque c’est nécessaire ?

Attachez vos ceintures; voici les classes partagées !

Produit blank

Singletons dans 4D

4D 20 R5 offre une fonctionnalité puissante aux développeurs : Les singletons !

Le design pattern singleton consiste à créer une instance unique d’une classe accessible dans l’ensemble de l’application.

Ce modèle offre de nombreux avantages, permettant de créer :

  • un wrapper pour les variables interprocess,
  • des classes utilitaires,
  • une base pour le design pattern de la fabrique,
  • et bien d’autres encore.

Poursuivez votre lecture pour en savoir plus sur cette nouveauté !

Produit blank

Impression non bloquante

Avec 4D v20 R4, nous avons considérablement amélioré la gestion des tâches d’impression au sein de 4D. 4D peut désormais exécuter plusieurs tâches d’impression en parallèle, ce qui augmente considérablement la réactivité de vos applications tout en facilitant la gestion des impressions simultanés.

Laissez-moi vous en dire plus !

Produit blank

Génération automatique des certificats SSL/TLS pour la communication client-serveur

Pour simplifier la sécurisation des communications client-serveur, à partir de 4D v20 R4, 4D Server génère ses propres certificats SSL/TLS au lieu de s’appuyer sur des certificats par défaut. Cette fonctionnalité apporte un avantage significatif pour les environnements de test et de production : vous bénéficierez de mesures de sécurité renforcées sans avoir à fournir vos propres certificats. Laissez-moi vous expliquer ce qui va changer.

Produit blank

ORDA : Attribution d’un chemin à un attribut blob ou image

Les commandes de base de données non-ORDA vous permettaient de placer des images et des blobs en dehors du fichier de données grâce à la commande SET EXTERNAL DATA PATH. Cette commande n’est pas adaptée à ORDA et c’est pourquoi nous avons décidé d’ajouter une fonctionnalité similaire dans la v20 R3 : La possibilité d’assigner à un attribut de type blob ou image un chemin sur le disque. Laissez-moi vous en dire plus à ce sujet.

Produit blank

Dépréciation des commandes PHP et suppression de l’interprète PHP intégré à 4D

PHP a joué un rôle crucial dans le développement web, et il a été introduit dans 4D v12 pour offrir des fonctionnalités qui n’étaient pas facilement disponibles dans le langage natif, telles que les fonctionnalités zip, hash ou LDAP. Au fil du temps, 4D a intégré un grand nombre de ces fonctions PHP dans ses fonctionnalités de base. Par conséquent, nous avons décidé de supprimer l’interpréteur PHP intégré dans 4D v20 R3 et de commencer le processus de dépréciation des commandes PHP dans la v21.

Bien que nous ne supprimions pas entièrement les commandes PHP de 4D, nous vous encourageons vivement à utiliser les system worker pour exécuter du code PHP à l’avenir.

Ce billet de blog vous guidera dans ce processus de transition, en montrant comment utiliser un interpréteur externe avec PHP Execute et en expliquant comment exécuter du code PHP de manière efficace avec un system worker.

Produit blank

Activer la couche QUIC à partir des paramètres de structure, d’utilisateur et de base de données

Dans la 4D v20 beta, nous étions ravis de vous montrer notre travail sur la nouvelle couche réseau QUIC. Comme la couche est encore en version bêta, nous l’avons désactivée pour la version finale de la LTS. La couche QUIC sera disponible dans les versions R, afin que vous puissiez suivre son développement et nous aider à l’améliorer.

Alors que 4D v20 ne permettait de changer de couche réseau que dans les applications interprétées et obligeait à un nouveau build pour les applications enginées, 4D v20 R2 permet de changer de couche dans les applications compilées/construites via les paramètres de structure, d’utilisateur et de base de données, afin de faciliter les tests même en production.