Al escribir secuencias de comandos utilizando un lenguaje de secuencias de comandos moderno, por ejemplo, Powershell o JavaScript, ¿dónde debo definir las constantes? ¿Debo hacer que todas las constantes sean globales para facilitar la lectura y la facilidad de uso, o tiene sentido definir constantes tan cerca de sus alcances como sea posible (en una función, por ejemplo, si no se necesita en otro lugar)? Estoy pensando principalmente en mensajes de error, ID de error, rutas a recursos u opciones de configuración.
fuente
they cause a similarly annoying problem of not being able to identify the value actually being used
¿No deberían los IDE tener un "ir a definición" o ser capaces de obtener una vista previa del valor como cualquier otra var? Los metadatos son más difíciles de guiones, supongo.similarly annoying problem of not being able to identify the value actually being used
No es necesario verificar muy a menudo queGRAVITATIONAL_ACCELERATION
es 9.80665. Una vez que se establece una constante, debe abstraerse para el valor y pensar en el nombre de la cosa.En lugar de usar constantes, puede usar un archivo de configuración. JavaScript le permite tener archivos fácilmente analizables en formato json. No sé sobre PowerShell.
Los archivos de configuración tienen la ventaja de estar centralizados, aunque el nombre de la propiedad en el alcance de la función (cuando la recupera) le permite mantener la legibilidad.
fuente