Mit der Einführung des Projektmodus und der Dateiaufteilung ist es ziemlich einfach, die Komponenten Ihrer Projekte zu manipulieren.
In den letzten Versionen haben wir mehrere Funktionen hinzugefügt, mit denen Sie Ihre eigene Build-Chain erstellen können, die an Ihr Team, Ihre Arbeitsmethoden und Ihre Bedürfnisse angepasst ist.
Zum Beispiel:
- Starten Sie eine Kompilierung durch Programmierung,
- Zippen/Entpacken von Dateien und Ordnern mit diesen Befehlen,
- Einfaches Verwalten der Informationen Ihrer Anwendung,
- Headless 4D Anwendungen in ein Build-Tool zu integrieren.
Um Ihnen zu helfen, Ihre eigene Build Chain zu erstellen oder 4D in ein Continuous Integration Tool zu integrieren, haben wir eine Komponente namens Build4D entwickelt, die auf GitHub mit verfügbar ist.
Für diesen ersten Schritt erlaubt Build4D die Erstellung einer kompilierten Struktur und einer Komponente. Wir werden die Komponente weiter ausbauen, um Ihnen die Verwaltung einer Einzelplatz-, Client- oder Serveranwendung zu ermöglichen.
Was ist kontinuierliche Integration (CI)?
Kontinuierliche Integration ist eine Praxis, die die Integration von Codeänderungen durch ein Entwicklungsteam automatisiert. Die Codequellen befinden sich auf einem Versionskontrollserver. Jedes Mal, wenn ein Entwickler seinen Code in das Repository einspeist, werden automatisch eine Syntaxprüfung, eine Kompilierung und Unit-Tests gestartet.
Neue Komponente: Build4D
Sie können diese neue Komponente von GitHub beziehen. Sie besteht aus drei Klassen:
- CompiledProject
- Komponente
- Kern
Die Klasse _core ist die Basisklasse. Sie enthält alle notwendigen elementaren Operationen, wie das Kompilieren, das Erstellen der Projektstruktur und das Erstellen einer 4dz, …
Die beiden Klassen CompiledProject und Component basieren dann auf der _core-Klasse. Sie erlauben es, ein kompiliertes Projekt bzw. eine Komponente zu erstellen.
Kompilierte Strukturklasse
Hier ist ein Beispiel für die Erstellung einer kompilierten Struktur mit integrierten Ressourcen- und Dokumentationsordnern:
var $build new$settings
$success$buildbuild: 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. xml-ph-0034@deep
Und das Ergebnis:
Komponentenklasse
Hier ist ein Beispiel für die Erstellung einer Komponente mit der Integration der Dokumentation und der Unterdrückung eines Ordners „Resources/Dev“ nur für die Entwicklung:
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à!
Weiter…
Vergessen Sie nicht, diese Komponente auf Github zu bookmarken, indem Sie auf den „Stern“ klicken, oder die Entwicklung dieser Komponente zu verfolgen, indem Sie auf „watch“ klicken. In diesem Blog finden Sie einen Überblick über die spannenden Funktionen von Github, um das Repository von 4D zu sehen und zu verfolgen.