Na busca de práticas de codificação eficientes, os desenvolvedores 4D geralmente configuram as definições do caminho de compilação para melhorar a sintaxe e as verificações de digitação, minimizando assim os erros durante a execução do código no modo de compilação. Vamos ver como os protótipos do método #DECLARE ganharão tempo e segurança de código.
Normalmente, quando se optava por parâmetros de rota de compilação como ‘Se declaram as Variáveis de processo e interprocessos’ ou ‘Se declaram Todas as variáveis’, desenvolvedores 4D precisavam declarar parâmetros de método uma segunda vez em um método ‘compiler_’.
No entanto, com a introdução de 4D v20 R4, esse passo adicional se torna uma coisa do passado. Parâmetros declarados em um protótipo #DECLARE não precisam mais de uma declaração redundante em um método ‘compiler_’.
A declaração dos parâmetros de um método num protótipo #DECLARE oferece agora as mesmas vantagens que para as funções de classe. Isto torna a declaração de parâmetros de métodos antigos obsoleta.
Uma vantagem desta melhoria é que o código existente não é afetado. Os parâmetros declarados nos métodos ‘compiler_’ continuam a ser reconhecidos. Se um parâmetro for declarado num método ‘compiler_’ e num protótipo de método, não é acionado qualquer erro, desde que os seus tipos coincidam. No entanto, uma divergência de tipos resulta agora num erro, contribuindo para melhorar a segurança do código.
Como os parâmetros de método declarados em protótipos já não exigem uma segunda declaração num método ‘compiler_’, a ação ‘generate typing’ na caixa de diálogo de compilação adiciona exclusivamente parâmetros declarados fora do protótipo.
Para facilitar uma transição suave para a utilização de protótipos de métodos, a última atualização introduz avisos em dois cenários:
- Quando os parâmetros são declarados tanto no corpo de um método como no seu protótipo.
- Quando um método é chamado com mais parâmetros do que os declarados no seu protótipo.
Esta funcionalidade permite-lhe poupar tempo e melhorar a qualidade do código, evitando proativamente erros de tempo de execução em modo compilado.