Creare un’applicazione client/server con lo strumento Build4D

Tradotto automaticamente da Deepl

Vi presentiamo l’ultima iterazione del componente Build4D, ora accessibile su GitHub. Nei precedenti post del blog, abbiamo discusso le possibilità offerte da un progetto compilato, un componente e un’applicazione autonoma.

Ora potete creare uno script per la vostra applicazione client/server dalla A alla Z e integrarlo facilmente con gli strumenti di integrazione continua.

Vediamo come.

Componente Build4D

Quali sono le possibilità?

Build4D offre due classi per generare la vostra applicazione client/server: le classi client e server. Quindi, con i diversi parametri, è possibile ogni combinazione immaginabile.

È possibile generare:

  • un client macOS e/o Windows,
  • un archivio client macOS e/o Windows per gli aggiornamenti automatici,
  • un server macOS e/o Windows.

Esempio

Ecco un semplice esempio di come creare un server Windows con client integrati:

Passo 1: Creare un client e un archivio client

Ecco un semplice esempio di come creare un’applicazione client e un archivio client.

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.4$settingsDProject")

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

// Configure the application
.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:="versione"
$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()

Passo2: Creare un server con i client integrati

Dopo aver creato l’archivio client (come nell’esempio precedente), è possibile creare l’applicazione server e utilizzare gli attributi macOSClientArchive e winClientArchive per passare il percorso agli archivi client precedentemente creati.

Ecco un esempio di come creare un’applicazione server con archivi client.

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 for OEM partner
$settings.versioning:={}
$settings.versioning.version:="versione"
$settings.versioning.copyright:="copyright"
$settings.versioning.companyName:="companyName"

// Add the client archives
$settings.macOSClientArchive:="...percorso archivio macOS..."
$settings.windowsClientArchive:="...percorso archivio win..."

// Create the deployment license file
$settings.license$buildbuild:=Folder(fk licenses folder).file("XXXXX.license4D")
$settings.xmlKeyLicense:=Folder(fk licenses folder).file("XXXXX.license4D")
//Certificate number found in your keyChain
// Sign if macOS appplication
$settings.signApplication:={}
$settings.signApplication.macSignature:=True
$settings.signApplication.macCertificate:="xxxxxx"

// Launch the build
$build:=cs.Build4D.Server.new($settings)
$success:=$build.build()

Avanti…

Esplorate la documentazione per ulteriori approfondimenti su questa nuova possibilità!

Vanessa Talbot
- Product Owner - Vanessa Talbot è entrata a far parte del team di 4D Program nel giugno 2014. In qualità di Product Owner, è incaricata di scrivere le storie degli utenti e di tradurle in specifiche funzionali. Il suo ruolo è anche quello di assicurarsi che l'implementazione della funzionalità fornita soddisfi le esigenze del cliente. Ha lavorato sulla maggior parte delle nuove funzionalità di multi-threading preemptive e anche su un argomento molto complesso: la nuova architettura per le applicazioni con motore. Vanessa si è laureata presso Telecom Saint-Etienne. Ha iniziato la sua carriera presso il Criminal Research Institute come sviluppatrice per il dipartimento audiovisivo. Ha lavorato anche nei settori dei media e della medicina come esperta di supporto tecnico, produzione e documentazione di nuove funzionalità.