Crear una aplicación cliente/servidor con la herramienta Build4D

Presentamos la última iteración del componente Build4D, ahora accesible en GitHub. En anteriores entradas del blog, discutimos las posibilidades ofrecidas por un proyecto compilado, un componente y una aplicación autónoma.

Ahora puede crear un script para su aplicación Cliente/Servidor de la A a la Z. E integrarlo fácilmente con herramientas de integración continua.

Veamos cómo.

Componente Build4D

¿Cuáles son las posibilidades?

Build4D ofrece dos clases para generar su aplicación cliente/servidor: la clase cliente y la clase servidor. Así, con los diferentes parámetros, todas las combinaciones imaginables son posibles.

Puede generar:

  • un cliente macOS y/o Windows,
  • un archivo cliente macOS y/o Windows para actualizaciones automáticas,
  • servidores macOS y/o Windows.

Ejemplo

He aquí un ejemplo sencillo de cómo crear un servidor Windows con clientes integrados:

Paso 1: Crear un cliente y un archivo cliente

Este es un ejemplo sencillo de cómo crear una aplicación cliente y un archivo cliente.

var $build : cs.Build4D.Client
var $settings ; $archive: Object
var $success : Boolean

$settings :={}

// Define the external project file
$settings.projectFile:=Folder(fk documents folder).file("Contact/Project/Contact.4DProject")

// Define the 4D Volume Desktop path
$settings.sourceAppFolder:=Folder(fk documents folder).folder("4D v20.1/4D Volume Desktop.app")
// O
$settings.sourceAppFolder:=Folder(fk documents folder).folder("4D v20.1/4D Volume Desktop")

// Configure the application
$settings.buildName:="myApp"
$settings.destinationFolder:="Test/Client/"

// Add the application icon
$settings.iconPath:="/RESOURCES/myIcon.icns"
// OR
$settings.iconPath:="/RESOURCES/myIcon.ico"

// Add the application information
$settings.versioning:={}
$settings.versioning.version:="version"
$settings.versioning.copyright$archive$buildbuildArchive:="copyright"
$settings.versioning.companyName:="companyName"

// Sign if macOS appplication
$settings.signApplication:={}
$settings.signApplication.macSignature:=True
$settings.signApplication.macCertificate:="xxxxxx" //Certificate number found in your keyChain
// Create the client application
$build:=cs.Build4D.Client.new($settings)
$success:=$build.build()

// Create the client application archive
$archive:=$build.buildArchive()

Paso 2: Crear un servidor con los clientes integrados

Después de crear el archivo cliente (como en el ejemplo anterior), puede crear la aplicación servidor y utilizar los atributos macOSClientArchive y winClientArchive para pasar la ruta a los archivos cliente creados anteriormente.

He aquí un ejemplo de cómo crear una aplicación de servidor con archivos de cliente.

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

$settings :={}

// Define the external project file
$settings.projectFile:=Folder(fk documents folder).file("Contact/Project/Contact.4DProject")

// Configure the application
$settings.buildName:="myApp"
$settings.destinationFolder:="Test/Server/"

// Define the 4D Server path
$settings .sourceAppFolder:=Folder(fk documents folder).folder("4D v20.0/4D Server.app")
// OR
$settings .sourceAppFolder:=Folder(fk documents folder).folder("4D v20.0/4D Server")

// Add the application icon
$settings .iconPath:="/RESOURCES/myIcon.icns"
// OR
$settings.iconPath:="/RESOURCES/myIcon.ico"

// Add the application information
$settings.versioning:={}
$settings.versioning.version:="version"
$settings.versioning.copyright:="copyright"
$settings.versioning.companyName:="companyName"

// Add the client archives
$settings.macOSClientArchive:="...ruta macOS Archive..."
$settings.windowsClientArchive:="...ruta win Archive..."

// Create the deployment license file for OEM partner
$settings.license$buildbuild:=Folder(fk licenses folder).file("XXXXX.license4D")
$settings.xmlKeyLicense:=Folder(fk licenses folder).file("XXXXX.license4D")

// Sign if macOS appplication
$settings.signApplication:={}
$settings.signApplication.macSignature:=True
$settings.signApplication.macCertificate:="xxxxxx"
//Certificate number found in your keyChain
// Launch the build
$build :=cs.Build4D.Server.new($settings)
$success:=$build.build()

Siguiente…

Explore la documentación para obtener más información sobre esta nueva posibilidad.

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.