Construisez votre structure ou votre composant compilé avec Build4D

Avec l’introduction du mode projet, il est assez facile de manipuler les composants de vos projets.

Dans les dernières versions, nous avons ajouté plusieurs fonctionnalités qui vous permettent de créer votre propre chaîne de construction adaptée à votre équipe, vos méthodes de travail et vos besoins.

Par exemple :

 

Pour vous aider à créer votre propre chaîne de build ou intégrer 4D dans un outil d’intégration continue, nous avons développé un composant nommé Build4D disponible sur GitHub avec les sources.

Pour cette première étape, Build4D vous permet de créer une structure compilée et un composant. Nous continuerons à l’enrichir pour vous permettre de gérer une application mono-utilisateur, une application client ou une application serveur.

Qu’est-ce que l’intégration continue (CI)

L’intégration continue est une pratique qui automatise l’intégration des modifications de code par une équipe de développement. Les sources du code se trouvent sur un serveur de contrôle des sources. Chaque fois qu’un développeur pousse son code sur le dépôt, un contrôle syntaxique, une compilation et des tests unitaires sont automatiquement lancés.

Nouveau composant : Build4D

Vous pouvez obtenir ce nouveau composant sur GitHub. Il est composé de trois classes :

  • CompiledProject
  • Composant
  • _core

 

La classe _core est la classe de base. Elle contient toutes les opérations élémentaires nécessaires, comme la compilation, la création de la structure du projet, la création d’un 4dz, …

Ensuite, les deux classes CompiledProject et Component, sont basées sur la classe _core. Elles permettent respectivement de créer un projet compilé et un composant.

Classe de structure compilée

Voici un exemple de création d’une structure compilée avec des dossiers de ressources et de documentation intégrés :

var $build : cs.Build4D.CompiledProject
var $settings : Object
var $success : Boolean

$settings:=New object()
$settings.destinationFolder:="Test/"
$settings.buildName:="myProject"

$settings.includePaths:=New collection
$settings.includePaths.push(New object("source"; "Resources/"))

$build:=cs.Build4D.CompiledProject.new($settings)
$success:=$build.build() 

Et le résultat :

Finder dialog to show the structure file

Classe de composants

Voici un exemple de création d’un composant avec l’intégration de la documentation et la suppression d’un dossier « Resources/Dev » uniquement pour le développement :

var $build : cs.Build4D.Component
var $settings : Object
var $success : Boolean

$settings:=New object()
$settings.destinationFolder:="Test/"
$settings.buildName:="myComponent"

$settings.includePaths:=New collection
$settings.includePaths.push(New object("source"; "Documentation/"))

$settings.deletePaths:=New collection
$settings.deletePaths.push("Resources/Dev/")

$build:=cs.Build4D.Component.new($settings)
$success:=$build.build()

Voilà !

blank

Ensuite…

Sur Github, n’oubliez pas de mettre ce composant en favoris en cliquant sur « l’étoile » ou de suivre les évolutions de ce composant en cliquant sur « Watch ». Vous pouvez trouver dans ce blog un aperçu des fonctionnalités passionnantes de Github pour voir et suivre le dépôt de 4D.

Vanessa Talbot
- Product Owner -Vanessa Talbot a rejoint l'équipe du programme 4D en juin 2014. En tant que Product Owner, elle est chargée de rédiger les user stories puis de les traduire en spécifications fonctionnelles. Son rôle est également de s'assurer que l'implémentation des fonctionnalités livrées répond aux besoins des clients.Depuis son arrivée, elle a travaillé à la définition des fonctionnalités clés de 4D. Elle a travaillé sur la plupart des nouvelles fonctionnalités de multithreading préemptif et aussi sur un sujet très complexe : la nouvelle architecture pour les applications enginées. Vanessa est diplômée de Telecom Saint-Etienne. Elle a commencé sa carrière à l'Institut de Recherche Criminelle en tant que développeur pour le département audiovisuel. Elle a également travaillé dans les domaines des médias et du médical en tant qu'experte en support technique, en production ainsi qu'en documentation de nouvelles fonctionnalités.