« marzo 2010
lunmarmiéjueviesábdom
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
    
       
Hoy
XML

Blog::Navigation

Bookmarks::Blogroll

Bookmarks::Articulos

Blog::Referers

Las visitas de hoy a la página: 38

Powered by Roller Weblogger.
20061007 sábado octubre 07, 2006
Spring si o no? El tema de Spring y frameworks similares siempre parece que trae polémica. Me apetecía poner un reply a la noticia: http://www.javahispano.org/news.item.action?id=1036958573, pero como al final se me hacía un poco largo y, como llevo tanto tiempo sin contribuir a este blog, pues ahí van mis "dos centimos" al respecto del tema:

Una aplicacion "profesional" no es algo simple ni sencillo. ¿Por que nos echa para atrás una tecnologia "complicada"?, Coger cualquier cosa que tengais a mano (un boligrafo por ejemplo) y abridlo, vereis la de piezas que tiene y coño: es un puñetero boli!! ¿Alguien sabe la película que se montan los ingenieros de coches para poner en el salpicadero un medidor de la gasolina? con lo facil que es poner un agujerito en el deposito y meter una varilla como con el aceite!!

La informatica es compleja, los programas son "maquinas" muy potentes y por lo tanto muy complejas y es necesario tener un monton de sistemas, capas, componentes que tienen que interoperar. Los programadores tenemos que especializarnos (o ser muy listos). No vale deshechar las soluciones "complicadas" porque nos cuesta tiempo aprenderlas.
Cierto que Spring mete mas complejidad a una aplicación, pues a lo mejor sí, pero es una complejidad controlada. Yo se Spring, y se que si cojo una aplicacion que utilice Spring, saco el Spring IDE y con los grafos de beans enseguida me puedo figurar como es mas o menos la aplicación (su estructura, arquitectura, etc).  Ahora bien, si es una "sencilla" aplicación hecha artesanalmente, ¿por donde empiezo a mirar? vete tu a saber.

Todo el día llorando porque queremos que la informática sea considerada como una ingeniería como las demás y luego decimos que es "demasiado compleja". Pues claro joder, por eso es una ingeniería, por eso la carpintería no es ingeniería, porque un tablón es un tablón y es mas simple que un idem. ¿Sabeis la pila de tesis doctorales que hay sobre tornillos? Tornillos!! un trozo de metal con una espiral! Y hay empresas que viven solo de diseñarlos!! Y algien dice: "Yo paso de la norma DIM de tornillos porque total, para pegar un par de piezas de metal leerme ese tocho..." o "Los tornillos de roscachapa del 12 son una putamierda porque los fabrica una multinacional corrupta, yo es que soy  de los de estrella de toda la vida porque son mas humanitarios y progresistas, así que en esta obra yo quiero poner tornillos de estrella del 5", pues NO.
En otras ingenierías, el que trabaja el hormigón se dedica al hormigón y el que trabaja el acero se dedica al acero y el que se dedica al hormigon no dice que el acero es una porquería porque el calculo de resistencias es demasiado complejo, cuando con un buen muro de hormigón se arregla todo y el encofrado es mas sencillo.
En fin, esta es mi opinión, aunque no se si mi explicación ha resultado un pelin compleja...
20060313 lunes marzo 13, 2006
XML no muerde Leyendo los comentarios al post de mi colega David sobre Spring 2.0, me he dado cuenta de que existe gente, programadores, con cierta "manía" a los ficheros XML.
Esta gente suele hablar de "programar en XML" y es que, sencillamente, no es cierto. No se trata de programar en XML, sino de configurar determinadas librerías (o componentes), utilizando XML.
¿No es mas cómodo decicar, en la medida de lo posible, el código Java a implementar la lógica de la aplicación sin meter por medio código de configuración (o de inicialización o lo que sea) de las librerías que se utilizan?
Si cada librería tiene sus propios ficheros XML, con sus DTDs, donde se puede configurar todo, ¿qué necesidad hay de mezclar nuestro código con llamadas a APIs de terceras partes, sujetas a cambios de versiones, actualizaciones, etc?.
En mi opinión, es mucho más cómoda la aproximación de Struts, con su fichero struts-config.xml, donde están mapeadas todas las URLs de la aplicación, su navegación y los objetos (Actions) que van a ejecutar la lógica, que la aproximación de Servlets, donde cada Servlet se encarga de todo: navegación, lógica, etc. y donde no puedes disponer, en un punto concreto de toda la configuración de navegación de la aplicación.
La ventaja de herramientas como Spring es que te permiten aislar casi por completo tu código de implementaciones concretas de las librerías que estás utilizando. Sinceramente, el precio de tener que escribir XML en lugar de Java no me parece excesivo, solamente es una mera cuestión de sintaxis.

un saludo
20060215 miércoles febrero 15, 2006
Continua la controversia con Spring Hace no mucho tiempo, un tal Bob Lee, publicó un post en el que exponía los motivos por los que no le gusta el contenedor Spring. Como no, el que busca polémica la encuentra y ya empiezan a aparecer las primeras respuestas (aparte de la de un servidor es este mismo blog). Ahora es Keith Donald (del equipo de Spring Web Flow) quien, en su blog, contesta a las preguntas que se plantea Bob.


20060206 lunes febrero 06, 2006
A Crazy Bob no le gusta Spring Lo dicho, a Bob Lee, también conocido como Crazy Bob por su blog no le gusta Spring. En su post del 29 de Enero, titulado "I don't get Spring" argurmenta los motivos por los cuales no le convence el framework Spring. Entre ellos cita:
 - No encuentra ninguna razón convincente para definir las dependencias en ficheros XML.
 - No se pueden validar las dependencias en tiempo de compilación.
 - Alega que uno de los motivos para utilizar Spring: la definición de dependencias sin necesidad de tocar el código, es falsa, ya que considera los ficheros XML como código fuente de la aplicación.
 - Spring obliga a duplicar identificadores de objetos: uno para el bean y otro interno, para la aplicación.
 - Dice que los nombres de beans de Spring son muy largos.
 - La creación de objetos es muy pesada
 - No soporta genericos (JDK 1.5)
 - Autowiring es inservible. Alega que no lo usa nadie.
 - Spring maneja mal los Scopes de los beans: session, request, etc.

Está claro que Spring tiene sus pros y sus contras, como todo... Bob puede que en algunas tenga razón, aunque en otras se equivoca. Por ejemplo, yo si que encuentro motivos para definir las dependencias en ficheros XML: Basta con ver los ficheros XML de Spring como una especie de "placa base virtual" en la que, de forma equivalente a las placas base hardware, es posible "pinchar" componentes (en unas son beans, en otras tarjetas PCI, que mas da?).
  A mi, personalmente, esto me parece una ventaja. Al igual que cuando cojo un PC, para saber lo que tiene lo abro y miro que tarjetas están pichadas en la plaza, para saber que tiene dentro una aplicación con Spring, me basta con abrir el fichero/s XML de beans (siempre y cuando el PC y la aplicación estén bien diseñados).

20060202 jueves febrero 02, 2006
Nuevo articulo: Ajax con DWR Me acaban de comunicar que ya está colgado en el portal (en la zona de tutoriales, creo) el artículo: "Ajax en aplicaciones web con DWR", escrito por un servidor. Basicamente, este artículo es un pequeño tutorial introductorio tanto a la tecnología Ajax (muy por encima) como a la librería DWR (que es muy sencilla y fácil de usar, pero todavía, al menos cuando escribí el tutorial, estaba un pelin "beta").
Espero que os sea de utilidad y/o de interés.

P.S. El artículo lo podeis encontrar en http://www.javahispano.org/download.download.action?type=tutorials&id=65

Copyright (C) 2003, Angel Retamar Arias