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.

Suppression des modules

Commençons par la première nouveauté, la possibilité de supprimer les modules que votre application n’utilise pas. Désormais, dans l’onglet « plugin & components » de l’écran de l’application à construire, vous pourrez supprimer 5 modules :

  • CEF signifie Chromium Embedded Framework. Nous l’utilisons pour afficher les zones web et les zones 4D View Pro. Il s’agit donc d’un cadre utile, mais aussi d’un cadre lourd.
  • MeCab est un formateur de texte 4D pour la langue japonaise. Si votre application n’est pas localisée en japonais, vous n’aurez pas besoin de ce module.
  • Si vous n’utilisez pas PHP, vous pouvez supprimer le module PHP sans hésiter.
  • SpellChecker est utile si vous utilisez les commandes de vérification orthographique de 4D ; sinon, vous pouvez le supprimer de votre application.
  • Enfin, si vous ne prévoyez pas d’utiliser un module de mise à jour 4D pour mettre à jour votre application, vous n’avez pas besoin de l’inclure.

Voici la taille de tous ces modules sur Mac et Windows :

Module Mac Windows
CEF 459 MB 217 MB
MeCab 80 MO 75 MB
PHP 26 MB 19 MB
Vérificateur d’orthographe 10 MB 10 MB
Mise à jour 11 MB 6 MB
Gain maximal 586 MB 327 MP

Comme vous pouvez le constater, la suppression de ces modules devrait réduire la taille de votre application de manière significative, notamment sur Mac, car tous ces modules sont des binaires universels pour les architectures Intel et Silicon.
Une chose importante à noter est que 4D ne vérifiera pas vos méthodes et formulaires pour tout appel aux modules que vous supprimez. Soyez donc certain de ce que vous faites lorsque vous décochez l’un d’entre eux.

Version japonaise

Avant la v19R5, nous fournissions à nos clients japonais une version spéciale de 4D sur Mac, car ils étaient les seuls à utiliser MeCab. Maintenant qu’il peut être supprimé facilement des applications, MeCab sera inclus pour tout le monde, et nous ne fournirons plus de version spéciale de 4D pour le Japon.

Répertoire de sortie lors de la compilation d’une structure sans dossiers connexes

Enfin, nous avons modifié le répertoire de sortie lorsque vous compilez une structure sans dossiers connexes.

La structure compilée était placée directement dans le dossier Compiled Database de votre répertoire de construction dans les versions précédentes, mais cela crée des problèmes si vous voulez construire plusieurs versions de la même structure. À partir de la v19R5, elle se trouvera dans un dossier portant le nom de votre application à l’intérieur du dossier Compiled Database. Si vous avez un processus de construction automatisé, faites attention à ce changement.

Ces nouveaux changements devraient vous aider à construire des applications plus légères et à faciliter l’automatisation de votre processus de construction. Et comme d’habitude, si vous avez des questions, laissez-nous un commentaire sur le forum 4D.

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 !).