clojure compojure noir

clojure - noir vs compojure?



(4)

Tengo problemas para entender el punto de la biblioteca Noir de clojure. Parece ser un marco escrito en la parte superior de un juego que cambia el nombre de defroute a defpage y lo llama un día. Obviamente es una simplificación injusta, pero ¿qué es exactamente lo que Noir trae a la mesa? ¿Por qué usaría Noir en lugar de compojure + hipo?

EDITAR / ACTUALIZAR: Noir está en desuso, interesante escriba aquí: http://blog.raynes.me/blog/2012/12/13/moving-away-from-noir/ .


Compojure es un pequeño marco que genera controladores de solicitud / respuesta de anillo, donde los controladores se eligen en función de las rutas que defina.

Noir agrega funcionalidad para el manejo de sesiones, cookies, plantillas y parciales, una forma más fácil de generar respuestas, validación de formularios, filtros de ruta, contraseñas encriptadas, desasialización (JS) y páginas de estado personalizadas de JSON. En otras palabras, Noir combina Compojure, Hiccup y un montón de otras cosas inteligentes en un paquete .


Del propio autor de Noir :

Noir no es realmente un reemplazo para [compojure e hipo], más una abstracción sobre ellos. Nació al ver cómo evolucionaba una aplicación web real y lo que faltaba en la pila ring / compojure / hipo cuando construí http://www.typewire.io . Además, como mencioné en uno de los otros comentarios, espero que sirva como el único "paquete" para comenzar con el desarrollo web en Clojure, en lugar de tener que intentarlo y armarlo de las piezas que están disponibles ahora. Al controlar todo eso, puedo crear una historia mucho más coherente y bien definida para ayudar a las personas a comenzar. También puedo compartir lo que he aprendido sobre el mantenimiento de sitios web en Clojure y, con suerte, fomentar patrones que eviten algunos de los problemas con los que caí.

(énfasis mío)


Noir, el marco ha sido http://blog.raynes.me/blog/2012/12/13/moving-away-from-noir/ por el propio Noir maintener.

Se sugiere utilizar Compojure y lib-noir :

Para nuevos sitios web, utilice Compojure y lib-noir. Esto es prácticamente igual que las baterías incluidas como lo fue Noir. Solo tienes que aprender a escribir rutas con Compojure. Es fácil y tan conciso como lo fue en Noir. No tiene que usar el adaptador de anillo-embarcadero y esas cosas, solo use el complemento lein-ring para iniciar su servidor. Además, si se aprovechó de Noir, incluido el hipo de forma predeterminada, tendrá que tener una dependencia explícita ahora. No biggy, ¿verdad? ¡Derecha!


Siempre puede consultar la API en el sitio web webnoir.org. Hay una gran cantidad de funcionalidad añadida además de defpage .