Comparación de Frameworks

La empresa de mi suegro quiere saltar al siglo XXI y me han encasquetado el tema de su sitio web. Algo muy sencillo: páginas estáticas para la presentación y una web app para que los clientes puedan hacer sus pedidos, los cuales por ahora hacen vía Fax. Yo encantado, unas noches dibujando y programando.
Paso todo el día programando en Java, por lo que fue mi primer pensamiento, pero luego me puse a pensar acerca de tooooodo el trabajo que iba a necesitar: algún servlet, unas cuantas JSP's, controladores, persistencia, EJB's. Esto sin contar lo caro que pueden llegar a ser los hosting de JBoss.
Necesitaba algo de motivación.
Llevo algo de tiempo sin tocar Spring y esperaba que las cosas hubieran cambiado algo en el transcurso de año y medio, pero no. Intente hacer un prototipo utilizando Spring, pero en el momento que empezó a fallar por los malditos (sí, los maldigo) XML's, me dio una depresión. Quería algo que fuera divertido y que no me hiciera pasar 40 días en implementar. Después recordé que odio Spring. Basicamente, me gusta escribir código en Java y odio todo cuanto tenga las letras X, M, L. Si mi vida dependiera de una medicina llamada MetaXitoLina o algo así, no la tomaría.
Llevo unas semanas utilizando Python para hacer algunas cosillas y me decante por ver los Frameworks que se ofrecían: Zope, Django y TurboGears.
Dando vueltas por Internet encontré este fantástico vídeo que compara distintos Frameworks: J2EE, RoR, Zope, TurboGears, Django y Jboss.
Lo increíble del vídeo es la pequeña aplicación que realiza utilizando cada una de las tecnologías mencionadas. Con J2EE (servlets + JSP + Hibernate) le tomó 225 minutos. Nada mal, casi cuatro horas. Con Zope, tardó 7 minutos.
La verdad es que la presentación se enfoca más a la presentación de la información y la velocidad de desarrollo de las interfaces, la facilidad para editarlas y otros aspectos (p.e. cantidad de SQL).
¿Por qué no existen Frameworks así de sencillos para Java? Puede que la solución sea Guice que tiene el mismo enfoque que Spring, pero cambiando todo el XML molesto por anotaciones. Habrá que probarlo y dedicarle una entrada... aunque sigamos con los EJB's.
Al final me he decidido por Django, ya que lo veo más abierto y menos "mágico" que RoR y Zope, con lo cual podré meter las pezuñas en el código en caso de que algo no vaya bien.

No hay comentarios:

Publicar un comentario