Os componentes podem agora publicar aulas! E ainda melhor, se a sua aplicação ainda estiver em modo binário, pode agora beneficiar de classes e desenvolvimento orientado para objectos, utilizando um componente (em modo de projecto) para criar as suas próprias classes e utilizá-las a partir da sua aplicação (baseada em modo binário).
Um componente 4D é um conjunto de métodos e formas. A partir de 4D v19 R5, é também um grupo de classes que representam uma ou mais funcionalidades que podem ser instaladas em diferentes aplicações. O sistema de completação do editor de código e outros sistemas de ajuda foram actualizados para apoiar as classes e métodos dos seus componentes para tornar a sua codificação mais suave.
Espaço de nomes dos componentes
Pode tornar as suas aulas utilizáveis no seu projecto anfitrião, adicionando um espaço de nomes nas definições do seu componente quando gera o seu componente. Para as classes internas que deseja esconder no seu projecto anfitrião, basta prefixar os seus nomes com um sublinhado (“_”).
Para evitar conflitos de nomes com classes existentes na base de dados anfitriã, é necessário criar um espaço de nomes para o seu componente. Na loja de classes, todas as suas classes estarão acessíveis através deste espaço de nomes:
Foram adicionadas novas opções na janela Configurações para que isso aconteça. Pode definir o namespace para a sua classe, e decidir se pretende gerar o ficheiro de sintaxe para permitir o auto-completamento quando um programador utiliza o seu componente:
Após gerar o seu componente como habitualmente, e colocá-lo na sua base de dados anfitriã, pode escrever este tipo de código para utilizar a sua classe:
var $class : cs.myComponent.Class1
$class:=cs.myComponent.Class1.new()
Complementos e dicas
Quando compilado, pode optar por activar a conclusão e o protótipo apresentado na base anfitriã, definindo a opção Gerar ficheiro de sintaxe para conclusão de código.
Se a opção for seleccionada, poderá utilizar as classes e métodos do seu componente:
- Conclusão:
- Dicas:
- E protótipo na parte inferior das janelas do editor de código:
Consulte a documentação para mais informações, e não hesite em dar-nos o seu feedback no fórum 4D!