Com a introdução do modo de projecto e de divisão de ficheiros, é bastante fácil manipular os componentes dos seus projectos.
Nos últimos lançamentos, acrescentámos várias funcionalidades que lhe permitem criar a sua própria cadeia de construção adaptada à sua equipa, aos seus métodos de trabalho, e às suas necessidades.
Por exemplo:
- Lance uma compilação por programação,
- Zip/unzip ficheiros e pastas com estes comandos,
- Gerir Facilmente a Informação da sua Aplicação,
- Aplicações 4D sem cabeça para a integrar numa ferramenta de construção.
Para o ajudar a criar a sua própria cadeia de construção ou integrar 4D numa ferramenta de integração contínua, desenvolvemos um componente chamado Build4D disponível no GitHub com as fontes.
Para este primeiro passo, o Build4D permite-lhe criar uma estrutura compilada e um componente. Continuaremos a enriquecê-lo para lhe permitir gerir uma aplicação de utilizador único, uma aplicação cliente, ou uma aplicação servidor.
O que é Integração Contínua (IC)
A integração contínua é uma prática que automatiza a integração de alterações de código por parte de uma equipa de desenvolvimento. As fontes de código estão num servidor de controlo de fontes. Cada vez que um programador empurra o seu código para o repositório, uma verificação de sintaxe, uma compilação, e testes unitários são automaticamente lançados.
Novo componente: Build4D
Pode obter este novo componente no GitHub. É composto por três classes:
- CompiledProject
- Componente
- _core
A classe _core é a classe base. Contém todas as operações elementares necessárias, como a compilação, a criação da estrutura do projecto, e a criação de um 4dz, …
Depois as duas classes CompiledProject e Component, são baseadas na classe _core. Elas permitem, respectivamente, criar um projecto compilado e um componente.
Classe de estrutura compilada
Eis um exemplo da criação de uma estrutura compilada com recursos integrados e pastas de documentação:
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("fonte"; "Recursos/"))
$build :=cs.Build4D.CompiledProject. xml-ph-0034@deep
E o resultado:
Classe de componentes
Eis um exemplo de criação de um componente com a integração da documentação e a supressão de uma pasta “Recursos/Dev” apenas para o desenvolvimento:
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("fonte"; "Documentação/"))
$settings .deletePaths:=New collection
$settings .deletePaths.push("Recursos/Dev/")
$build :=cs.Build4D. .Component.new($settings)
$success :=$build.build()
Voilà!
A seguir…
No Github, não se esqueça de marcar este componente clicando na “estrela” ou de seguir as evoluções deste componente clicando em “ver”. Pode encontrar neste blog uma visão geral das excitantes características do Github para ver e seguir o repositório de 4D.