Debería:
* Cuando necesita crear una aplicación web basada en el servidor Java JVM / Enterprise (aunque Struts es solo una de las muchas opciones para esto)
* Use un middleware java (pieza de código que necesita ser acoplada con la aplicación)
* Independencia de la plataforma: antes de que exista lo mismo para ruby / python, pero solo en un sentido limitado. Muchas bibliotecas de estos idiomas también sufren el mismo problema. Además, el número de plataformas compatibles con Java supera el de Ruby / Python
* Necesita un marco de MVC de propósito general que no sea obstinado hacia un enfoque particular: Rails y Django son muy obstinados y si no sigue la convención, básicamente está disparando a su pie.
* Estabilidad del código – Java no va a ningún lado – su mantenimiento es realmente bueno ya que hay más desarrolladores y desde el punto de vista de un desarrollador: cada problema está bien documentado y hay documentación completa disponible.
* Otras restricciones como la composición del equipo (afinidad de los desarrolladores hacia los frameworks Java MVC de código abierto)
No debería:
* Es una aplicación demasiado simple (en este caso, la aplicación de cualquier herramienta mvc es una exageración)
* Sigue un patrón de uso común – un blog o una wiki – use un CMS en este caso
* Si necesita un marco moderno con las mejores prácticas (los puntales clásicos son desde 2001 y los puntales 2 desde 2006 o algo así) que tienen una comunidad vibrante (un nuevo enfoque de rieles generalmente se generaliza en 2-6 meses en la comunidad, pero lo hará todavía veo muchos equipos que no usan generadores para la aplicación / configuración de struts autogenerados) y están en desarrollo activo.
* Verbosidad: este es un problema para casi todos los frameworks / herramientas de Java en general, ya que se requieren toneladas de configuración.
* Velocidad (en desarrollo): este es un gran punto de dolor: debe escribir toneladas de código y luego otras toneladas de código repetitivo para desarrollar una característica en struts.
¿Por qué no se debe desarrollar un sitio web con el marco Struts? ¿Y por qué debería?
Related Content
¿Dónde puedo encontrar los mejores temas de bootstrap?
¿Cuál es la mejor empresa de desarrollo de aplicaciones web en la India?
Cómo rastrear errores de JavaScript front-end
¿Cómo podría crear una aplicación web Django como Codecademy?
¿Cuáles son las mejores herramientas de creación de prototipos de aplicaciones web y móviles?
Te diré lo feliz que estaba cuando mis superiores decidieron cambiar de Struts a Django.
En primer lugar, el laberinto XML en Struts. Las estructuras son muy complejas. Créame, me tomó mucho tiempo encontrar el archivo XML que tiene la estructura de la base de datos. Al igual que Java, Struts necesita que el programador escriba una gran cantidad de código para que funcione. Por el contrario, Django tiene una estructura de directorio simple, una para cada aplicación, y los nombres de los archivos tienen el sentido adecuado.
Luego, conocí el comando syncdb, que crea la base de datos para usted en Django. Nada de eso en Struts.
Finalmente, la simplicidad. Alguien me desafió a encontrar la contraseña maestra para el sitio web en el marco de Struts. No pude, no en ese laberinto (o tal vez estaba almacenado en otro lugar por completo). Si hubiera sido Django, solo tenía que buscar la vista de inicio de sesión.
Dicho esto, si observa que la mayoría (si no todas) las pasarelas de pago están en Struts (el .do o .jsp en la URL lo dice). Quizás sea por el hecho de que Java es seguro o quizás sea algo que hacer con Apache Tomcat, pero a menos que esté haciendo algo así, sugeriría ir con Django. (Aunque aún es más fácil que Struts, configurarlo para un novato puede ser un poco frustrante al principio, pero los beneficios en el futuro son realmente buenos).
More Interesting
¿Cómo se almacenan las páginas web en los servidores?
¿Cómo se crea un entorno de mundo virtual en línea que la gente realmente usará?
¿Cuál es la diferencia entre AppDynamics y Application Insights para Azure WebApps?
¿Qué necesitas para desarrollar una aplicación móvil o una aplicación web como Airbnb?
Cómo abordar un problema como construir una aplicación web para un campus escolar
¿Debo poner todo el código en mis controladores cuando estoy escribiendo una aplicación web?
¿Cuáles son los idiomas utilizados para desarrollar la interfaz de una aplicación web?
¿Es una buena idea codificar una aplicación web y su API en una sola aplicación Laravel?