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

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.

Produit blank

Déclarer les propriétés d’une classe

Le langage 4D est en constante amélioration. Pour la v20, nous vous apportons une nouvelle fonctionnalité qui facilitera l’utilisation de vos classes : les propriétés de classe déclarées. Déclarer les propriétés de vos classes améliorera grandement l’autocomplétion et vous donnera également des erreurs claires lors de la compilation. Vous voulez en savoir plus ? Laissez-moi vous montrer comment cela fonctionne !

Produit blank

Log des requêtes ORDA sur le serveur

Depuis sa sortie, la popularité d’ORDA ne cesse de croître et il est maintenant largement utilisé sur vos serveurs de production. Avec 4D v20, nous vous apportons 2 améliorations sur la façon dont les requêtes ORDA sont loggées côté serveur. La première est une amélioration du request log qui donnera désormais plus d’informations sur les requêtes ORDA. La seconde est l’ajout d’un log ORDA côté serveur similaire au log ORDA côté client. Permettez-moi de vous présenter ces nouvelles fonctionnalités.

Produit blank

Intégration automatique de multiples journaux

En tant que développeurs et administrateurs de bases de données, vous savez combien il est important de pouvoir récupérer rapidement des données corrompues. Les sauvegardes et les journaux vous aident dans cette tâche. Mais il arrive qu’une sauvegarde soit corrompue et que vous deviez revenir à une sauvegarde plus ancienne et intégrer plusieurs journaux consécutivement. Il se peut aussi que votre fichier journal prenne trop d’ampleur et que vous préfériez en créer régulièrement un nouveau pour éviter d’encombrer le disque dur de votre serveur. Ou encore, vous utilisez votre propre méthode de sauvegarde des données. Dans tous ces cas, vous devez intégrer plusieurs journaux, ce qui n’est possible que manuellement via le Centre de Sécurité et de Maintenance.

Avec 4D v20, vous pouvez intégrer automatiquement de multiples journaux au démarrage de votre base de données. Laissez-moi vous expliquer comment cela fonctionne.

Produit blank

QUIC : l’avenir des couches réseau

Les serveurs en production tournant sous 4D les plus imposants acceptent plus d’un millier de connexions simultanées, et ce nombre ne cesse de croître. Par conséquent, la performance devient un objectif de plus en plus important pour nos équipes. Le protocole QUIC, utilisé par la nouvelle version du standard HTTP, a été spécialement conçu pour accroître la vitesse et la fiabilité. Comme nous sommes toujours à la recherche de technologies intéressantes, nous travaillons au remplacement de notre protocole réseau de bas niveau par le protocole QUIC.

Pour la v20, vous pouvez passer à cette couche réseau et vérifier si cela améliore vos performances. Il s’agit encore d’un bêta test, car nous avons besoin de vos retours avant de l’utiliser comme couche réseau par défaut. Vous ne pourrez donc l’utiliser que sur les versions bêta de 4D.

Produit blank

4D Backup, VSS snapshots et les nouvelles commandes pour verrouiller le datastore

4D vous offre plusieurs moyens intégrés de sauvegarder vos données : La sauvegarde 4D et l’utilisation d’un serveur miroir. Avec 4D v20, 4D expose des commandes internes pour verrouiller le datastore, ce qui vous permet de copier vos données pendant que 4D est en cours d’exécution.
Tout d’abord, parlons des différents moyens de sauvegarder vos données avec 4D.

Produit blank

Dernières améliorations du client HTTP

Traduit automatiquement de Deepl

Avec 4D v19R6, nous vous avons apporté une nouvelle façon d’effectuer des requêtes HTTP : les classes HTTP. A l’époque, certaines des fonctionnalités des classes HTTP n’étaient pas finalisées, car nous voulions les adapter à la nouvelle syntaxe. C’est maintenant chose faite ! Dans la v19R7, les fonctionnalités de réponses compressées, de réponses en morceaux et de redirections sont désormais complètes.

En bonus, nous avons également ajouté une nouvelle façon d’enregistrer les requêtes HTTP. Et comme il est utile pour tout le monde, cette nouvelle journalisation est disponible pour les nouvelles classes HTTP ainsi que pour l’ancienne syntaxe.

Produit blank

Classes HTTP : Une nouvelle façon d’effectuer des requêtes HTTP asynchrones

Traduit automatiquement de Deepl

Dans notre effort constant pour améliorer la syntaxe et les fonctionnalités de 4D, nous avons décidé de vous apporter de nouvelles commandes pour effectuer des requêtes HTTP dans 4D : les classes HTTP. Elles sont disponibles dès la version 19 R6 de 4D et bénéficieront de nombreuses améliorations dans les prochaines versions. Laissez-moi vous montrer comment les utiliser dès maintenant.

Produit blank

Développement simultané sur 4D Server en mode projet

Traduit automatiquement de Deepl

Depuis son lancement dans 4D v18, Projects a considérablement étendu les capacités de 4D en apportant la compatibilité avec les systèmes de contrôle de version – entre autres choses.

Grâce à d’excellents retours, nous ne pourrions être plus fiers de constater l’adoption significative de cette fonctionnalité par la communauté 4D. Cela nous a poussés à l’améliorer pour la rendre encore meilleure.

Vos commentaires incluaient une demande de possibilité de travailler simultanément en équipe sur un seul serveur de développement. Une fois encore, 4D a écouté, et nous sommes ravis d’annoncer qu’avec 4D v19 R6, vous pouvez travailler sur un serveur de développement en mode projet!

Produit blank

Réduisez la taille de vos applications 4D grâce à ces nouvelles fonctionnalités

Traduit automatiquement de Deepl

Dans le cadre de nos efforts continus pour améliorer la création d’applications 4D, nous avons ajouté quelques fonctionnalités à 4D v19R5 que vous trouverez certainement utiles.

La première est la possibilité de supprimer certains des plus gros modules 4D de vos applications : CEF, Mecab, PHP, Spell Checker, et 4D Updater. Si vous n’avez pas besoin de certains de ces modules, vous serez en mesure de réduire de manière significative la taille de vos applications.

Nous avons également modifié le répertoire final lorsque vous construisez une structure compilée, afin d’accommoder ceux qui utilisent plusieurs versions compilées de la même structure.

Quant à nos clients japonais, nous avons fusionné la version japonaise de 4D et la version internationale sur MacOS.

Entrons dans les détails.