Sto avendo un po 'di difficoltà durante la creazione di un'applicazione web basata su Clojure. È una semplice app CRUD che ho iniziato ad esplorare l'ecosistema web Clojure. Sto sperimentando diverse librerie come Hiccup, Enlive, Compojure e Noir (anche se Noir sembra essere sull'orlo della deprecazione).applicazioni web "ricche" con Clojure
La mia domanda è in realtà due domande. Il primo riguarda l'apparente mancanza di convenzioni per la creazione di applicazioni web per clojure. E in secondo luogo ho bisogno di alcuni suggerimenti sulla creazione di componenti html "ricchi".
Quello che mi piace del modo Clojure è la facilità di far suonare diverse librerie. Sostituire la vita con il singhiozzo e viceversa non è un grosso problema. Tutto gioca il suo unico e semplice ruolo. Molto diverso da un quadro complesso come JSF.
Ma c'è il punto: questa grande libertà mi fa sentire un po 'perso. In JSF so dove tutto ha il suo posto. Uso Spring per integrare tutti i componenti, Spring-Security per gestire tutte le sessioni. Le librerie di componenti mi liberano dallo stress dovuto alla gestione di problemi html, javascript e ajax.
Soprattutto le librerie di componenti di cui sopra è quello che mi manca con Clojure. Mi sono trovato a implementare cose come un databile con caratteristiche come alternanza di colori di riga, impaginazione, ordinamento di colonne, filtro incrementale e così via. E mi lascia domande su come sincronizzare lo stato del browser e del server di tali componenti, specialmente quando è incluso ajax. Non ero in grado di trovare alcuna risposta matura in rete.
Il vantaggio dei framework: una volta comprese le regole e le restrizioni, è possibile creare la propria applicazione e concentrarsi sulle regole aziendali. L'infrastruttura tecnica è trattata e non dovrebbe essere una distrazione.
Quali suggerimenti ci sono per il mondo Clojure? ClojureScript One è una soluzione? Non l'ho ancora studiato. Qualcuno conosce librerie di componenti che offrono funzionalità simili come ad esempio RichFaces datatable? C'è un modo preferito di trattare con Ajax?
Questo forum non è per discussione. È per risolvere un problema particolare. Clojurescript scarica Javascript per il browser. Per il back-end, Noir è stato appena ritirato a favore di Compojure. – octopusgrabbus
Sono consapevole che questo forum non è in discussione. Ma non mi aspetto la sola risposta "giusta". Ma rimuoverò quell'ultima frase. Come ho già detto, non ho davvero esaminato il "clojurescript One". So cosa è il clojurescript. 'Clojurescript One' mi è sembrato un punto di partenza per avvolgere tutto. Ma forse ho sbagliato ed è solo un'app tutorial per iniziare con clojurescript. – nansen