Mejorar la compilación con la declaración directa en 4D

Con 4D 20 R7 puede decir adiós a los métodos «Compiler_» y abrazar más libertad en cómo y dónde declarar sus variables. Ahorre tiempo centrándose en su flujo de trabajo de desarrollo y en su proceso de codificación gracias a Direct Typing.

En versiones anteriores de 4D, los desarrolladores tenían dos opciones para manejar la declaración de variables durante la compilación. Si el parámetro «Ruta de compilación» se definía en cualquier opción que no fuera «Todas las variables están declaradas», el compilador intentaba inferir los tipos de las variables no declaradas basándose en su uso en el código. Aunque esto puede simplificar las declaraciones de variables, tiene su contrapartida:

  • Compilación más lenta: la inferencia de tipos requiere una pasada de compilación adicional, lo que ralentiza el proceso general de compilación.
  • Riesgo de errores: el compilador podría inferir tipos incorrectos, introduciendo potencialmente errores difíciles de depurar.

 

Para evitar estos problemas, se aconsejó a los desarrolladores que impusieran una declaración estricta utilizando la opción «Todas las variables están declaradas». Sin embargo, esto requería declarar todas las variables de proceso e inter-proceso dentro de métodos dedicados «Compiler_».

Introducción de la DECLARAción directa

Para hacer frente a estos retos, hemos introducido la tipificación directa, que simplifica la forma de declarar y declarar las variables durante la compilación.

Con la declaración directa, ya no es necesario utilizar métodos «Compiler_» para declarar variables de proceso o interproceso. En su lugar, ahora puede definirlas en el lugar lógico de su código, ya sea dentro de un método, una clase o cualquier otro contexto apropiado. Esto le da un mayor control sobre la organización de su código y mejora la encapsulación.

Este cambio proporciona la flexibilidad necesaria para organizar el código como se desee, al tiempo que garantiza la seguridad de tipos y una compilación eficiente.

Adopción de DECLARACIÓN directA en sus proyectos

Tanto si está trabajando en un proyecto nuevo como en uno ya existente, Direct Typing puede integrarse fácilmente en su flujo de trabajo.

  • Los proyectos nuevos siempre utilizan Direct Typing. Esto significa que puede empezar a disfrutar de las ventajas de la declaración flexible de variables y de una mejor organización del código desde el primer momento.

  • Para los proyectos existentes, encontrará un nuevo ajuste en la ruta de compilación que le permite activar o desactivar Direct Typing. Esto garantiza la compatibilidad con el código heredado, dándole la opción de migrar a su propio ritmo.

Sólo tiene que activar esta opción, y será libre de declarar sus variables proceso e inter-proceso donde tenga más sentido en su código.

Novedades de la DECLARAción directa

La sintaxis #declare es ahora obligatoria para declarar parámetros de los métodos con declaración directa, haciendo obsoletos los comandos tradicionales del compilador como C_TEXT, C_LONGINT y otros. Una de las principales ventajas es que, especialmente en los componentes, ya no es necesario compilar los componentes al compilar una base local. El compilador obtendrá automáticamente los prototipos de métodos directamente del código del componente, simplificando y acelerando el proceso de desarrollo.

Para ayudar a convertir comandos del compilador como C_TEXT y C_LONGINT a la sintaxis de declaración var, hemos creado una macro 4D disponible en GitHub. Puede acceder a ella aquí: 4D-Macros en GitHub.

¿cómo funciona?

  • Cuando el compilador encuentra una variable que no ha sido explícitamente declarada, añade esa variable a una lista de variables «por declarar».
  • A continuación, el compilador detiene temporalmente la compilación del método actual y procede a compilar otros métodos.
  • Antes de hacer la pausa, recopila todas las definiciones de variables del método.
  • Después de compilar todos los métodos, el compilador comprueba si todas las variables de la lista «a declarar» han sido encontradas y se les ha asignado un tipo.
    • Si es así, reanuda la compilación de los métodos previamente pausados.
    • Si no, se generarán errores para indicar las variables no declaradas.

Conclusión

La introducción de la Tipificación Directa marca una mejora significativa en cómo se manejan las declaraciones de variables en 4D. Al eliminar la necesidad de métodos «Compiler_» y permitir que las declaraciones de variables se hagan libremente dentro del código, los desarrolladores 4D tienen ahora mayor flexibilidad y control sobre cómo estructuran sus proyectos.

Para saber más sobre Direct Typing y cómo implementarlo en sus proyectos, consulte nuestra documentación.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené se unió al equipo de 4D Program en noviembre de 2016. Como Product Owner, está a cargo de escribir las historias de usuario y luego traducirlas a especificaciones funcionales. Su papel es también asegurarse de que la implementación de la característica entregada cumple con las necesidades del cliente. Después de obtener una licenciatura en Ciencias de la Computación en el CNAM, Fabrice se unió a una pequeña empresa de publicación de software como desarrollador Windev. A continuación, trabajó para diferentes empresas del sector industrial y comercial como desarrollador de Windev y de la web, así como asesor técnico de nuevas funcionalidades.