30-07-2007 Raul Vicente
Hace tiempo Luis me envío este artículo y la verdad es que me dejó bastante mal ya que soy un fiel defensor de Spring, pero por otro lado me atrajo ya que es de los pocos que se atrevía a criticar a Spring. Lo tenía en el tintero ya que el inglés utilizado me ha resultado bastante complicado de entender.
El autor da 5 razones para no utilizar Spring:
Mi opinión al respecto de estas cuestiones es la siguiente:
Estas son mis opiniones, pero no tengo tanto bagaje en la informática como para hablar ex cathedra, así que, me gustaría conocer que pensaís vosotros.
1. dahernan | Julio 30th, 2007 at 12:26 pm
Vamos a ver también punto por punto:
1- Hay cuatro formas de configurar Spring
* XML puro (todos la conocemos)
* Programáticamente, por el medio de la API
* Mediante el estándar Java Configuration (no recuerdo el JSR)
* Con mínimo XML y anotaciones (Spring 2.1)
Con lo cual se cae por su propio peso
2- Mas o menos estoy de acuerdo, aunque si que hay herramientas como SpringIDE que si que ayuda, y otros framework de IoC como Guice, aunque este último, hace acoplamiento fuerte.
3- Esta es completamente falsa, para mi si que es ligero, recordemos que Spring tiene una distribución por partes spring-core, spring-orm, spring-aop… Si, simplemente quieres IoC no necesitas todo lo demas.
4- Si que es desacoplado pero al contrario que tu dices nadie te obliga a hacer interfaces, simplemente es una buena práctica hacerlos. Si quitas Spring simplemente tendrías que inyectar las dependencias a mano.
Ahora claro si usas todas las templates y facilidades que ofrece es normal que ya no lo puedas o más bien quieras quitar ![]()
2. Raúl Vicente | Julio 30th, 2007 at 1:39 pm
Buenas dahernan,
la verdad es que en todos los ejemplos que he visto se programa contra interfaces, pense que era requisito de Spring.
En cuanto a lo que comentas de las tools de Spring, yo me he acostumbrado sin utilizar Spring IDE, pero tengo que probar a ver que tal va.
En mi caso, yo siempre he utilizado Spring en toda su potencia con templates claro. Esta bien saber que se puede utilizar por partes no lo he probado nunca.
A mí me parece que una vez puestos a utilizar Spring no valerte de sus facilidades a la hora de manejar conexiones,transacciones,etc es un error. Yo la verdad es que me he acostumbrado y ya no lo quiero dejar.
Muchas Gracias.
3. jmonne | Julio 30th, 2007 at 5:41 pm
1 - Una buena distribución de los xml con la herencia que se permite entre beans, más la ayuda de SpringIDE permite configurar (si se escoge XML) Spring estupendamente. A todo esto lo que comenta perfectamente dahernan, existen otras posiblidades lo cual no deja de ser una ventaja.
2 - Me remito al punto 1. Da gusto trabajar con SpringIDE.
3 - Otra vez, siempre ayuda SpringIDE
4 - +1 con dahernan (en su punto 3). Respecto al tema de performance pues no entro ya que no he realizado proyectos gigantes, dejando de banda que tampoco muestra datos al respecto.
5 - Lo siento pero es que no lo veo. Dejando de banda el componente MVC, Spring no te obliga a utilizarle en servicio/dao. Si lo quieres utilizar bien, sino, siempre puedes utilizar otra cosa.
No sé, por el momento veo mas ventajas que inconvenientes para seguir utilizandolo.
Saludos!
4. Raúl Vicente | Julio 31st, 2007 at 10:24 am
Bien veo que más o menos estaís de acuerdo conmigo.
Gracias