« Ponga una lista en su vida | Inicio | Keep it Simple »

La complejidad de la arquitectura suele ser directamente proporcional a la complejidad del proyecto

Hace ya unos años que algunos de los proyectos desarrollados en ActionScript han alcanzado un nivel de complejidad tal, que obligan al desarrollador a utilizar todo el arsenal de herramientas que hasta no hace tanto sólo estaban al alcance de los desarrolladores de aplicaciones empresariales.

La figura clásica del flashero, la de un perfil mixto entre programador y diseñador, generalmente incluso de un perfil más cercano al diseño, que se pasa a la programación al quedársele pequeña la línea de tiempo, empieza a no tener cabida más allá del clásico estudio de diseño, del sitio donde "se hace web" como apoyo al trabajo en papel.

El flashero, hoy por hoy, debe conocer y dominar los mismos conceptos que conocen y dominan los que programan contra servidor: separación de la lógica de la aplicación por capas, por supuesto programación orientada a objetos de la de verdad, utilización apropiada de patrones de diseño, minimización de las líneas de código maximizando la generalización...

Sin embargo, el mercado sigue sin reconocer esa valía. Un flashero sigue cobrando menos que un perfil equivalente que, por ejemplo, programe en Java, siendo capaz de resolver problemas de complejidades conceptuales similares y utilizando recursos y artificios similares.

Y no sólo el mercado, sino lo que es más sangrante, los que en su día fueron flasheros de esos que colocaban el código en botones, y que ahora son los que lanzan a otros a realizar proyectos imposibles en plazos inalcanzables, son los mismos que protestan cuando el código resulta de una arquitectura "compleja" para sus limitados conocimientos.

Hace años que la realidad del desarrollo en flash ha cambiado. Sin embargo, esa realidad sigue sin querer ser vista por muchos.

Comentarios

Creo que además es un circulo vicioso.

Gran parte de lo que demanda el "mercado" es lo que ofrecen esos que en su día fueron flasheros. Que no deja de ser webs en html con una intro en flash con el botón de saltar intro, y el banner de 468x60 de toda la vida, debido a que no solo no saben hacer más que eso, sino que además no entienden que se puede ( y se debe ) hacer más que eso. Y en muchos casos, no quieren porque no se atreven, porque tienen miedo de perder el control, que es lo que suele ocurrir cuando estás metido en algo que te supera.

Hoy en día resulta complejo encontrar aplicaciones/webs flash que no tengan efectos o animaciones fascinantes cada vez que cambias de sección. Y en las que se encuentran, muchas son de desarrolladores, que las han realizado por su cuenta, sin tener que rendir cuentas a quien le "sugiere" que la aplicación "tenga vida, que sea dinámica".

Pero esto, creo que es extensible a más cosas.
Si hago un repaso mental, me vienen a la mente tres webs/aplicaciones que uso diariamente y que me parecen fabulosas . Flickr, del.icio.us y tadalist.

Creo, bueno, estoy convencido de que ninguna de las tres se podrían haber realizado en ninguna de las empresas en las que he trabajado. Todas se habrían convertido en un álbum de cromos con banners y publicidades. Es más, creo que del.icio.us y tadalist ni siquiera se habrían aprobado ( "una web para guardar los favoritos y otra para hacer listas, vaya tontería" más o menos esa sería la respuesta. ).

Creo que la practica actual es que las aplicaciones serias se hagan con otras tecnologías que no son FLASH, esto seguramente significa que habrá pocos desarrolladores flash que sepan hacer aplicaciones serias ¿me equivoco?

Sí Jorge, creo que sí que te equivocas. El que una aplicación sea o no seria no depende de la tecnología con la que esté desarrollada

Cesar, lo que digo es que en la actualidad las aplicaciones no se hacen con FLASH. Me equivoco!?

Aplicaciones cliente sí se hacen

¿aplicaciones clientes?
si!?yo no he visto ninguna:-(
por que? que ganas haceindo una aplicacioin de escritorio con Flash?

No me he explicado bien. No me refería sólo a aplicaciones de escritorio, sino a aplicaciones cliente en entornos cliente-servidor. En todo caso, hay varios casos de uso claros, como en e-learning, edu-gaming, aplicaciones con necesidad de interfaces complejos o variables para proceso de datos...

Publicar un comentario

(Si no dejó aquí ningún comentario anteriormente, quizás necesite aprobación por parte del dueño del sitio, antes de que el comentario aparezca. Hasta entonces, no se mostrará en la entrada. Gracias por su paciencia).