language-agnostic configuration dry business-rules

language agnostic - ¿Cómo comparte información de configuración o reglas comerciales entre idiomas?



language-agnostic configuration (5)

  1. Use variables de entorno O / S (envvars) para almacenar información de configuración de la aplicación (como contraseñas db)

  2. Las reglas de validación a menudo requieren lógica. Podría escribir sus reglas en JavaScript y luego ejecutarlas en el navegador, el servidor (usando Nashorn) y la base de datos (PLV8 con Postgres).

Estoy buscando las mejores prácticas para utilizar los mismos datos en diferentes lugares sin necesidad de repetirlo , esto podría incluir reglas de configuración o comerciales.

Ejemplo 1. Reglas de validación de datos en las que desea validar en el cliente mediante javascript, pero desea asegurarse validando en el servidor.

Ejemplo 2. Acceso a la base de datos donde su servidor web y sus cronjobs usan la misma contraseña, nombre de usuario.

La facilidad de procesamiento y una solución legible para los humanos serían una ventaja.


Codifica tus datos en JSON . Hay una biblioteca JSON para casi cualquier idioma en el que quieras pensar, o si no, es bastante fácil codificar uno. Si JSON no es suficiente, tal vez consulte YAML .


Tanto odio como puedan, para compartir reglas de validación de datos, voy a tener que decir Expresiones regulares .

Lo sé, lo sé, todo el mundo los odia, pero son (generalmente) agnósticos del idioma.



XML es bastante utilizado a nivel mundial. Fácil de leer, fácil de escribir y legible para los humanos. Si le preocupa la sobrecarga de espacio (que en realidad no lo es si desea que sea legible por personas), simplemente comprítela antes de enviarla, XML se comprime bastante bien.