He trabajado en pequeños proyectos usando la pila MEAN, el framework java Play, Python-pyramid y frameworks php como codeIgnitor.
En 2011–2012, pasé un poco de tiempo leyendo los conceptos básicos de J2EE para mi trabajo de curso en mi licenciatura. Me pareció bastante trabajo mostrar una página web de alguna manera. Cuando lo haces, sabes que es un buen trabajo, ya que tienes el control de muchas maneras y puedes cambiar muchas cosas con los métodos expuestos.
Pero después de eso, intentas algo como php o python y te das cuenta de que se desarrolló la misma página web en lo que podría parecer 1/10 del tiempo necesario para hacerlo en Java.
- ¿Cuánto CSS debo aprender para el desarrollo de backend?
- ¿Para cuál hay más demanda en el desarrollo de sitios web: front-end o back-end?
- ¿Los sitios que tienen un back-end dinámico usan los mismos idiomas que el front-end del sitio / plataforma?
- ¿Cuáles son las opciones para las pruebas de automatización de back-end de Node.js?
- ¿Es cierto que los desarrolladores frontend son fácilmente reemplazables y menos valiosos que los desarrolladores backend?
Esto, por supuesto, mucha gente estará de acuerdo en que si tienes un pequeño proyecto y decides ir a Java (JEE – Spring u otros marcos de Java), tomarán mucho tiempo para la configuración inicial. Tienes que configurar muchas cosas y escribir código para muchas cosas. A la gente le resulta frustrante, uno porque lleva mucho tiempo y 2 porque necesitas saber todo eso para que funcione. No puede escribir esas cosas, necesita conocer muchas clases y métodos para hacer la configuración correctamente.
(O use el código de la placa de la caldera o siga algunos blogs que dan el código y una explicación paso a paso)
Mi punto es que hay tantas cosas involucradas, que debes seguir una referencia de algún tipo para hacer lo más básico también. Lleva mucho tiempo y terminas desperdiciando la lectura y probando algo, lo que si hubieras tomado un marco más ligero, se habría hecho en tan poco tiempo.
Sin embargo, y aquí es donde se pone interesante, vale la pena. – A la larga. Spring no está destinado a proyectos pequeños o incluso a hackatones donde tienes que codificar algo y mostrar una buena demostración en 2 a 3 días como máximo.
JEE está destinado a aplicaciones empresariales. Imagine una base de código donde hay cientos de clases. Te darás cuenta de que configurarlo hace que sea tan fácil a largo plazo, para ti y para cualquiera que trabaje contigo seguir la estructura y hacer lo que sea necesario.
Personalmente, sentí que aprendía la primavera y JEE valió la pena el tiempo dedicado a comprender las cosas complejas a su alrededor. No es la mejor manera de hacer las cosas, pero ciertamente tiene un encanto.
Si tuviera que usar Java, y no tiene demasiado tiempo para implementar, sugeriría Play Framework. Es más fácil, además tienes la posibilidad de usar scala con él (si te apetece funcional 🙂)