Guardar el código fuente del proyecto sin tokens

Traducido automáticamente de Deepl

Los comandos, constantes, tablas y campos se almacenan con sus tokens en los archivos de código fuente del proyecto (archivos 4dm). Esto permite a 4D renombrarlos automáticamente. Pero a veces, le gustaría que estos archivos de código fuente se almacenaran sin tokens para una mejor legibilidad con un sistema de control de versiones o un editor de código externo, o para compartir mejor el código entre proyectos. Veamos cómo hacer que 4D almacene el código fuente sin estos tokens.

¿Qué son los tokens?

Este sistema permite a 4D reconocer automáticamente un comando, una constante, una tabla o un campo en el lenguaje heredado, incluso si estos elementos han sido renombrados.
Un nombre de comando va seguido de «:C» y el ID del comando, una constante por «:K» y el ID de la constante, una tabla por»:» y el ID de la tabla, un campo por «:» y el ID del campo.

Al abrir el código fuente en el editor de métodos, 4D renombra automáticamente los elementos según sus tokens. Estos tokens están ocultos por 4D en el editor de métodos, pero si utiliza un editor de código fuente externo, son visibles.
La lectura del código fuente puede ser más difícil en un editor de código fuente externo o en sistemas de control de versiones debido a estos tokens.

Ejemplo de un método con tokens:

¿Cómo desactivarlos?

Para facilitar la lectura, 4D le ofrece ahora la posibilidad de almacenar los archivos de código fuente sin tokens.
Tiene una nueva preferencia de 4D a su disposición para hacer que sus nuevos proyectos escriban los archivos de código fuente sin tokens.
blank
Por defecto, la opción está activada para que no haya ningún cambio: su código fuente se sigue guardando con tokens. Pero si desactiva la opción, los archivos de código fuente de sus nuevos proyectos se guardarán sin tokens.

Muestra del mismo método sin tokens:
blank

¿Qué pasa con mi proyecto existente?

Cuando desactiva la preferencia de tokenización de 4D, el archivo 4DProject de los nuevos proyectos contiene un atributo booleano llamado «tokenizedText» establecido en *false*.
Técnicamente, puede añadir este atributo al archivo 4DProject de un proyecto existente, pero no borrará los tokens en los archivos de código fuente existentes hasta que se vuelvan a guardar mediante una modificación en el editor de métodos de 4D o utilizando el comando METHOD SET CODE comando. Tenga en cuenta que este atributo es utilizable desde 4D v19 LTS.

¿Cómo funciona?

Usted puede saber que en un proyecto, todo su código fuente se guarda en inglés en los archivos 4DM, incluso si usted desarrolla utilizando el idioma francés.
Cuando el editor de métodos 4D abre un archivo 4DM, los tokens se tienen en cuenta en primer lugar. Y luego, los comandos, constantes, tablas y campos son reconocidos por su texto (y traducidos si desarrolla con el idioma francés). Por lo tanto, aunque su código fuente esté almacenado sin token, ¡sigue siendo editable como siempre en el editor de métodos 4D!

No olvide que si desactiva la tokenización, tendrá que realizar usted mismo el renombramiento de comandos/constantes/tablas/campos en el lenguaje de legado, como es el uso con otras plataformas de desarrollo.

Proyecto de marco de trabajo

Si desarrollas un proyecto framework para compartirlo con otros proyectos, puedes encontrarte con problemas relacionados con las tablas y campos con código heredado. No puedes limitarte a copiar los archivos del framework al proyecto si éste contiene tablas que no tienen los mismos IDs. Por ejemplo, la tabla [Setting] de tu framework puede ser la #1, pero la #3 en un proyecto de destino. Si los archivos de código fuente copiados del framework contienen tokens, 4D reemplazará la tabla [Setting] por la que tiene el ID #1 en el proyecto de destino.

Para facilitar la compartición del código fuente, puede desactivar el guardado de tokens en el proyecto del framework. Entonces, después de copiar los archivos del framework en el proyecto de destino, reconocerá la tabla [Setting] por su nombre y no por su ID (potencialmente erróneo).

Avatar
• Propietario de producto - Damien Fuzeau se ha unido al equipo de 4D Product en febrero de 2019. Como Propietario de producto, está a cargo de escribir historias de usuario, y luego traducirlas a especificaciones funcionales. Su trabajo también implica asegurarse de que las implementaciones de funcionalidades entregadas estén cumpliendo con las necesidades del cliente. Damien es licenciado en ingeniería de software por la Universidad de Nantes. Estuvo más de 23 años en su anterior empresa, primero como desarrollador (descubriendo 4D en 1997), y más tarde como gerente de ingeniería y arquitecto de software. Esta compañía es un Partner OEM de 4D y ha desplegado softwares empresariales basados en 4D para miles de usuarios, en cientos de servidores. Por lo tanto, Damien está acostumbrado al desarrollo y despliegue de 4D en un contexto multilingüe.