No contexto do desenvolvimento 4D, o gerenciamento de componentes normalmente envolve uma quantidade substancial de trabalho. No entanto, a introdução da funcionalidade Gestor de Componentes no ambiente 4D representa um avanço significativo na gestão de componentes.
Não mais confinado a colocar componentes em uma pasta Components designada, esse recurso se baseia em dois elementos chave: dependencies.json e environment4d.json. Estes arquivos oferecem aos programadores uma melhor visibilidade das dependências da aplicação e a flexibilidade para personalizar os caminhos dos componentes.
Uma interface de gestão de COMPONENTES em desenvolvimento
Antes de mergulhar no cerne da questão, por favor informe que pode atualmente ver os componentes 4D e os componentes da pasta Components do seu projeto no novo ecrã Project Dependencies que pode aceder a partir do menu Design.
Esta tela não só permite ver as dependências do seu projeto, mas também permitirá em breve adicionar novas dependências e geri-las.
Gerenciamento estruturado com dependencies.json
O gerenciamento de componentes é orquestrado por meio do dependencies.json, um arquivo de manifesto que lista os componentes que seu aplicativo usa. Esse arquivo de manifesto garante uma estrutura clara para o gerenciamento de dependências, simplificando o carregamento desses elementos cruciais.
O benefício é que todos os seus projetos são mantidos em uma estrutura plana (como via GitHub Desktop), eliminando a necessidade de aliases-apelidos ou criação de cópias duplicadas, especialmente ao lidar com componentes interdependentes.
exemplo de dependencies.json:
{ "dependencies": { "MeuComponente" : {} } }
Neste exemplo, MyComponent, que é o componente que queremos carregar, está localizado ao lado da pasta do pacote.
Personalização com environment4d.json
Se o caminho predefinido (junto à pasta do pacote) não for adequado, continua a ser possível definir caminhos de componentes num arquivo de ambiente de trabalho pessoal. O environment4d.json permite a personalização do ambiente. Ao especificar caminhos absolutos ou relativos para os componentes, este manifesto oferece uma adaptabilidade apreciável para satisfazer as necessidades específicas de cada projeto.
O benefício direto é que cada desenvolvedor pode ter seu arquivo de ambiente em uma pasta pai do banco de dados, permitindo que eles decidam não submetê-lo, por exemplo, e acomodar sua organização de disco.
exemplo environment4d.json:
{ "dependências": { "myComponent1" : "../MyComponent1", "myComponent2" : "./MeuComponente2", "myComponent3" : "file:///Users/jean/MyComponent3" } }
Gerenciamento prático para desenvolvedores
Se environment4d.json estiver ausente para uma dada dependência ou se esse arquivo não tiver informações sobre uma dependência listada em dependencies.json, 4D utiliza o nome mencionado em dependencies.json para recuperar a dependência próxima à pasta do pacote.
Obtenha o status de todos os seus componentes em um único lugar
Na tela de dependências do projeto, também será capaz de ver os componentes declarados em dependencies.json e environment4d.json e obter informações para cada dependência, como o nome, fonte e acesso à dependência no disco, assim como o estado da dependência: se há um conflito com outra dependência, se a dependência foi carregada com sucesso, e por que se não.
A caraterística Component Manager representa um avanço notável no ecossistema 4D. Ao alavancar dependencies.json e environment4d.json, esta nova abordagem oferece aos desenvolvedores um controle melhorado sobre a gestão de componentes. Dê uma olhada na documentação para mais detalhes, e fique atento às próximas atualizações sobre o gerenciador de componentes!