216 votes

Comment réaliser une application web en Clojure ?

Je suppose que c'est une question étrange pour l'immense majorité des programmeurs qui travaillent quotidiennement avec Java. Ce n'est pas mon cas. Je connais Java-le-langage, parce que j'ai travaillé sur des projets Java, mais pas Java-le-monde. Je n'ai jamais créé une application web à partir de rien en Java. Si je dois le faire avec Python, Ruby, je sais où aller (Django ou Rails), mais si je veux faire une application web en Clojure, non pas parce que je suis obligé de vivre dans un monde Java, mais parce que j'aime ce langage et que je veux essayer, quelles bibliothèques et quels frameworks dois-je utiliser ?

1 votes

Je me demandais si vous souhaitiez utiliser les API natives de Java ou celles de Clojure ?

0 votes

Ande : Je ne suis vraiment pas sûr, car je connais très peu le monde Java à cet égard (mais j'utilise Java, le langage, depuis un certain temps déjà au travail).

0 votes

Je pense que ce serait bien si cette question se terminait par une liste de frameworks web Clojure, avec une réponse chacun, et que chacun puisse voter pour son préféré. Je pense que la réponse de Meredydd est définitivement celle de Compojure. Je vais en ajouter une pour Webjure et ce serait bien d'avoir une comparaison.

14voto

claj Points 1723

Ces jours-ci Piédestal est un framework qui vaut le coup d'œil. Il s'agit d'un framework côté serveur qui s'appuie sur les éléments suivants Bague Mais il libère également la demande entrante du fil d'exécution initial en permettant de mettre en pause et de reprendre cette demande particulière (sinon une demande lente bloquerait le fil d'exécution du serveur). Peut-être un peu comme un JavaBean.

D'autres cadres intéressants sont hoplon.io et celui de David Nolen Om (basé sur React)

11voto

Pablo Points 44881

Webjure un cadre de programmation web pour Clojure.

Caractéristiques : Dispatch des appels de servlets aux fonctions Clojure. Génération dynamique de HTML. Interface de requête SQL (via JDBC).

Cette réponse est destinée à fournir des informations sur Webjure.

3 votes

Je ne suis pas sûr que ce soit un bon exemple non plus. Alors que la base de code semble peu profonde (bonne), il y a suffisamment de choses écrites en java pour que cela semble manquer la marque. Je me serais attendu à un framework purement clojure.

8voto

Joe W. Points 849

Compojure est ce que j'ai utilisé pour construire une petite application de blogging. Il est calqué sur Sinatra, qui est un framework web minimal et léger pour Ruby. J'ai surtout utilisé le routage, qui est exactement comme celui de Sinatra. Ça ressemble à ça :

(GET "/post/:id/:slug"
  (some-function-that-returns-html :id :slug))

Il n'y a pas d'ORM ni de bibliothèque de templating, mais il dispose de fonctions qui transforment les vecteurs en HTML.

5voto

mnicky Points 511

Vous pouvez également jeter un coup d'œil à ces cadres (tirés de disclojure/projets ) :

Il y a également une autre question connexe sur Stack Overflow : Cadres web Clojure matures ?

3voto

sveri Points 960

Clause de non-responsabilité : je suis l'auteur.

J'ai créé un modèle leiningen qui combine les modèles luminusweb et chestnut. Vous obtenez donc quelque chose avec lequel vous pouvez construire du code clojure et du code clojurescript pour le front et le backend.
En outre, il permet la gestion des utilisateurs, ainsi que la génération de quelques CRUD simples et d'autres petites choses intéressantes : https://github.com/sveri/closp

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X