Construye tu estructura o componente compilado con Build4D

Traducido automáticamente de Deepl

Con la introducción del modo proyecto y la división de archivos, es bastante fácil manipular los componentes de tus proyectos.

En las últimas versiones de características, hemos añadido varias funcionalidades que le permiten crear su propia cadena de construcción adaptada a su equipo, sus métodos de trabajo y sus necesidades.

Por ejemplo

Para ayudarle a crear su propia cadena de compilación o integrar 4D en una herramienta de integración continua, hemos desarrollado un componente llamado Build4D disponible en GitHub con las fuentes.

Para este primer paso, Build4D le permite crear una estructura compilada y un componente. Seguiremos enriqueciéndolo para permitirte gestionar una aplicación monousuario, una aplicación cliente o una aplicación servidor.

Qué es la integración continua (IC)

La integración continua es una práctica que automatiza la integración de los cambios de código por parte de un equipo de desarrollo. Las fuentes de código se encuentran en un servidor de control de código fuente. Cada vez que un desarrollador introduce su código en el repositorio, se inicia automáticamente una comprobación de sintaxis, una compilación y pruebas unitarias.

Nuevo componente: Build4D

Puedes obtener este nuevo componente desde GitHub. Se compone de tres clases:

  • CompiledProject
  • Componente
  • núcleo

La clase _core es la clase base. Contiene todas las operaciones elementales necesarias, como la compilación, la creación de la estructura del proyecto, y la creación de un 4dz, …

A continuación, las dos clases CompiledProject y Component, se basan en la clase _core. Permiten respectivamente crear un proyecto compilado y un componente.

Clase estructura compilada

He aquí un ejemplo de creación de una estructura compilada con carpetas de recursos y documentación integradas:


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

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

$settings .includePaths:=New collection
$settings .includePaths.push(New object("fuente"; "Recursos/"))

$build :=cs.Build4D.CompiledProject. xml-ph-0034@deep

Y el resultado:

Finder dialog to show the structure file

Clase componente

He aquí un ejemplo de creación de un componente con la integración de la documentación y la supresión de una carpeta «Resources/Dev» sólo para el desarrollo:

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

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

$settings .includePaths:=New collection
$settings.includePaths.push(New object("fuente"; "Documentación/"))

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

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

¡Voilà!

blank

Siguiente…

En Github, no olvide marcar este componente haciendo clic en la «estrella» o seguir las evoluciones de este componente haciendo clic en «watch». Usted puede encontrar en este blog una visión general de las características interesantes de Github para ver y seguir el repositorio de 4D.

Vanessa Talbot
• Propietario de producto - Vanessa Talbot llegó al equipo de 4D Program en junio de 2014. Como Propietario de producto, está a cargo de escribir las historias de los usuarios y luego traducirlas a especificaciones funcionales. Su papel es también asegurarse de que la implementación de la funcionalidad entregada cumpla con las necesidades del cliente. Desde su llegada, ha trabajado en la definición de funcionalidades claves en 4D. Ha trabajado en la mayoría de las nuevas funcionalidades de multi hilo apropiativo y también en un tema muy complejo: la nueva arquitectura para la aplicación engined. Vanessa es licenciada por Telecom Saint-Etienne. Comenzó su carrera en el Instituto de Investigación Criminal como desarrolladora del departamento audiovisual. También ha trabajado en medios de comunicación y en el ámbito médico como experta en soporte técnico, producción y documentación de nuevas funcionalidades.