Provengo da uno sfondo java molto forte. Quindi la mia risposta qui potrebbe essere un po 'parziale.
Play finalmente porta alla comunità java ciò che django è stato per tutti questi anni nella comunità Python, ma solo in un modo migliore. Play è costruito sulla jvm quindi l'eredità tutte le chicche da una solida piattaforma che si è dimostrata negli anni quella più affidabile e scalabile che consente di scrivere ed eseguire applicazioni su larga scala.
Voglio dire che ho provato django. La sua popolarità tra la comunità web mi ha reso curioso e volevo provarlo.
Stranamente non l'ho trovato facile da usare come mi aspettavo. Tante configurazioni. Anche le biblioteche possono fare la stessa cosa e spesso non giocano molto bene l'una con l'altra. Un modo troppo magico. Inoltre, non avere la sicurezza del tipo rende molto difficile gestire e mantenere l'applicazione web su larga scala. Non fraintendetemi, sono abbastanza sicuro che la gente sia riuscita a farlo, ma nella mia esperienza trovo ancora java/scala più adatto per questo, specialmente quando condividete il codice base con molti altri sviluppatori.
Il supporto IDE per Java è imbattibile. Se implementi TDD, ti ritrovi a rielaborare il codice e a spostare le cose quotidianamente. E gli IDE java ti danno tutto questo potere. Con tipo di sicurezza e altro ancora.
Il mio take away è che finché ti ritrovi a scrivere una semplice applicazione/prototipo/giocattolo CRUD senza nemmeno pensare troppo a funzioni avanzate e su larga scala, allora probabilmente puoi trovare alcuni vantaggi nell'usare python/django. Altrimenti l'intero ecosistema java vince a mani basse. E il gioco è la ciliegina sulla torta.
Ho pensato che i test delle unità riducessero la necessità di codice, generazione, distribuzione, cicli di test in JavaEE, quando si arriva al browser, si è certi che funzioni. – n002213f
sì, ma i test unitari sono utili per testare la logica di business, nient'altro (testare l'interfaccia Web è sempre un problema). Quindi, nessuna scelta, se si vuole essere efficienti nello sviluppo dell'interfaccia web, l'unico modo è aumentare la velocità dei cicli di build/deploy. – Lastnico