Flex 2.0 Beta 1 con SDK gratuito
Diciembre 31st, 1969 - [Enlace local]
Hoy ha salido Flex 2.0 Beta 1. Las principales carácteristicas son que el SDK de Flex 2.0 será gratuito. Esto es un gran cambio en la política de licencias de Adobe cuyo objetivo es conseguir posicionar la plataforma Flash en el mercado y ganar un gran número de desarrolladores. Por otra parte el IDE basado en Eclipse (Flex Builder) costará siempre por debajo de los 1000$.
El SDK incluye todo lo necesario para desarrollar aplicaciones Flex de manera gratuita, es decir:
- Compilador de MXML/AS.
- Framework de componentes de Flex 2.0.
- El Flash Player (este ya era gratuito y evidentemente se distribuirá con el SDK)
Además tendremos disponible una versión de FES (Flex Enterprise Services) gratuita. Esto está por definir pero según parece la versión gratuita empezará teniendo como objetivo aplicaciones con un numero de usuarios pequeño orientadas a pymes. Existirán otras versiónes de pago (por ejemplo para ISVs).
Como decía el objetivo es llegar a conseguir que la plataforma Flash se convieta en la mejor opción a la hora de desarrollar RIAs y creo que con este giro Adobe puede lograrlo, aunque todavía podemos encontrarnos más sorpresas positivas según los comentarios de gente de Adobe en sus blogs o en la lista de correo de osflash.org.
» Leer más, comentarios, etc...
Screenweaver para Eclipse
Diciembre 31st, 1969 - [Enlace local]
Edwin Van Rijkom acaba de anunciar la versión alpha de ScreenWeaver para Eclipse. Como la mayoría sabreis Screenweaver es Open Source y nos posibilita el crear aplicaciones Flash de Escritorio.
[…]The idea behind the project is to bring Screenweaver 3 into the place
where a lot of you do your coding — namely, Eclipse […]
[…]To integrate with AMES/ASDT we’re working on having the plug-in provide an Ant task for building projects[..]
Para más información:
» Leer más, comentarios, etc...
AS2.0 resumido en una sola hoja
Diciembre 31st, 1969 - [Enlace local]
[fuente Mike Chambers]
» Leer más, comentarios, etc...
Arreglo en el Menú Contextual del Flash Player 8
Diciembre 31st, 1969 - [Enlace local]
Este que comento aquí es un error que existía antes del Flash Player 8 y que en su epoca me dió bastantes quebraderos de cabeza. Consistía en la imposibilidad de crear menús contextuales con la clase ContextMenu asignandolos a clips anidados. Es decir si tenemos, por poner un ejemplo, un MovieClip(padre) en el escenario el cuál tiene anidado otro MovieClip(hijo) al cual queremos asignarle acciones concretas através de su propio menú contextual, esto no es posible si exportamos nuestro test usando FP7, en cambio en FP8 esto si es posible y dichos items aparecerán en su menú contextual sin ningún problema. Esto hacía que la clase ContextMenu fuese poco útil hasta la fecha. Me alegra que hayan arreglado este bug tan molesto.
» Leer más, comentarios, etc...
X-Ray en proyectos Flash Open Source
Diciembre 31st, 1969 - [Enlace local]
Para el que no conozca el proyecto X-Ray le resumiré que es una potente herramienta para poder inspeccionar nuestras aplicaciones SWF en tiempo de ejecución como si de un depurador se tratara. Esto se realiza gracias a la magia del objeto LocalConnection que nos permite realizar una comunicación entre dos SWFs corriendo en local. En nuestro caso un SWF será nuestra aplicación a la cuál le añadiremos un pequeño conector para permitir la comunicación con el segundo SWF que no es más que la interface de X-Ray donde podremos consultar las diferentes variables, objetos y MovieClips que se encuentren en nuestra aplicación a la hora de tomar la foto.
Para utilizar X-Ray con proyectos Flash libres (ya sabeis… ASDT, MTASC, Eclipse y SWFMill) podeis usar la versión denominada “Connector Only“, la cual puede ser descargada desde aquí (la revisión actual del connector es la 1.4.5). Además necesitareis la interface de X-Ray cuya versión más reciente (la 1.2.5 en estos momentos) está en esta otra url.
Dentro del fichero podeis encontrar un directorio de clases. Para poder reutilizar esta carpeta os recomiendo que la situeis en un directorio fuera del proyecto actual para que podais compartir esas clases. Yo uso una carpeta lib donde tengo una subcarpeta para cada conjunto de clases (como pueden ser las clases de animation package, remoting, mx parcheadas,etc…) que suelo reutilizar en cada proyecto. Para estas he creado una carpeta xray_classes. Dentro de dicha carpeta he copiado solo la subcarpeta com debido a que ni uso las clases mx ni flashout).
Dentro de mi build.xml (de ANT), tengo una nueva variable que referencia estas clases, la cuál utilizare luego para construir mi SWF con MTASC encadenandola en el path:
-
<property name=“xray_classes” value=“${lib}/xray_classes”/>
Para comprobar que todo está correctamente configurado, usé el siguiente código en la clase principal de mi proyecto:
-
/* Importar la clase XRayLoader para cargar el conector
-
* Dicho conector lo podeis encontrar en el zip y se llama: ConnectorOnly_as2_fp7_OS_1.4.5.swf
-
* El conector debeis de copiarlo a la carpeta donde tengais vuestro swf
-
*/
-
import com.blitzagency.xray.util.XrayLoader;
-
-
/* El siguiente código dee estar en el constructor de vuestra clase
-
* principal
-
*/
-
// — XRAY
-
var listener:Object = new Object();
-
listener.xrayLoadComplete = function(){
-
XrayLoader.trace(“Xray has loaded…”);
-
}
-
XrayLoader.addEventListener(“xrayLoadComplete”, listener);
-
XrayLoader.loadConnector(“ConnectorOnly_as2_fp7_OS_1.4.5.swf”, this);
-
Una vez que compileis vuestra aplicación esta será capaz de cargar el conector de X-Ray y comunicarse con la interface que hace las veces de debugger. Esta última debeis arrancarla después de vuestra aplicación para que la magia tenga efecto.
Lo bueno de este método es que podeis configurar vuestro build.xml y la clase donde insertais el código anterior para automatizar vuestros pasos a producción y solo disponer del “modo debug” cuando os interese.
» Leer más, comentarios, etc...
Aprende a usar MTASC y SWFMill fácilmente
Diciembre 31st, 1969 - [Enlace local]
Gracias al artículo Flash libre, fácil escrito por Zárate puedes introducirte en el mundo de la creación SWF libre de la forma más sencilla y en nuestro idioma.
Si te daba pereza el empezar a utilizar estas herramientas, ya no tienes excusa
.
» Leer más, comentarios, etc...
¿Tienes un blog sobre RIA?
Diciembre 31st, 1969 - [Enlace local]
Me gustaría descubrir más bitacoras, blogs o webs sobre Flash, Flex, RIA, o incluso, Open Source dedicado a RIA en general. Si escribes o lees algún blog que hable sobre alguno de estos temas te agradecería que invirtieses unos segundos en dejar la dirección en un comentario.
Además también sería estupendo que aquellos blogs que ya son clásicos o de sobra conocidos, figurasen también para que todos aquellas personas que hayan empezado hace poco en este mundillo y no los conozcan puedan sindicarlos (como siempre recomiendo bloglines).
Gracias de antemano por tu colaboración
» Leer más, comentarios, etc...
Haciendo funcionar Flash Remoting con MTASC
Diciembre 31st, 1969 - [Enlace local]
El siguiente post de Patrick Mineault es fundamental para todos aquellos que querais trabajar con MTASC y Flash Remoting. Recordad que los componentes y clases de Flash Remoting no son Open Source pero son gratis. Patrick describe una guía paso a paso para poder compilar estas clases sin ningún problema.
» Leer más, comentarios, etc...
¿Sería bueno que el Flash Player fuese libre?
Diciembre 31st, 1969 - [Enlace local]
Estos días se ha movido mucho la noticia de la implementación de nuevo Flash Player libre llamado Gnash. Otros compañeros del medio como Miguel o Joan ya se han echo eco de la noticia. Ahora bien…¿es positivo que tengamos diferentes players disponibles?.
Recuerdo hace tiempo la discusión con un compañero de trabajo sobre si sería positivo que el Flash Player fuese libre…bien, yo creo que no. Así como en otro tipo de cosas me encanta el open source, en el caso concreto del FP creo que es muy positivo que este sea controlado por algún organismo( Ahora bien, si dicho ente fuese del estilo a una fundación como Apache, pues mejor que mejor).
El motivo de que opine de esta manera es la necesidad de una sola implementación valida del FP que este en todos los ordenadores. Esto no es lo mismo que una tecnología de servidor donde pueden existir tropecientas implementaciones (Java, .NET, PHP, ColdFusion, …), puesto que estas corren en la máquina servidora y no en el cliente pero finalmente exportan algo que si es capaz de ser entendido por el cliente. En el caso de un player o un browser si creo necesario una única implementación puesto que si no, luego tenemos los típicos problemas de incompatibilidad como suele ocurrir con los browsers de internet. ¿Os imaginais el cisco que se puede montar si hubiese tres o cuatro players distintos?…pues que estaríamos con el mismo problema que nos daban los browsers donde teníamos que estar controlando si estabamos en un IE o en un Firefox…por no hablar de las diferencias en la visualización.
Ahora bien, la existencia de Gnash la veo muy positiva pues no deja de ser una opción más, pero no perdamos de vista que Adobe sigue liderando la tecnología y la única opción que creo que sería una buenisima evolución para nuestro player es, como he comentado, que Adobe crease algún tipo de institución tipo fundación Apache que velase por los intereses de la tecnología Flash y sus usuarios.
» Leer más, comentarios, etc...
Tal día como hoy…
Diciembre 31st, 1969 - [Enlace local]
…, día 15 de Enero de hace dos años, empecé a escribir en este blog. El cual ha sido una muy grata experiencia hasta la fecha.
Recuerdo que por aquel entonces me fascinaba este mundillo y el tener la posibilidad de tener tu propio espacio en internet para hablar sobre las cosas que te gustan y te motivan. A este blog tengo que agradecer el haber tenido la oportunidad de conocer a grandes compañeros del medio con los que me encanta charlar, colaborar y en definitiva seguir soñando y jugando con la tecnología e internet que es lo que nos gusta.
Me gustaría aprovechar para animar a todos aquellos que tienen el gusanillo de publicar, a que creen su propio espacio, ya sea en forma de blog, wiki, foro o laboratorio de experimentos y compartan todo aquello que les motive y parezca interesante. Les aseguro que es una de esas cosas de las que no se arrepentiran
.
» Leer más, comentarios, etc...
BarraDeVoces: Comentarios con voz
Diciembre 31st, 1969 - [Enlace local]
La barradevoces, un desarrollo en en flash, es una nueva herramienta que permite añadir voz a los comentarios de nuestro blog. Permite que mediante una llamada de SkypeOut o de teléfono a un número 902, cualquier lector de la página grabe un comentario que, de manera inmediata, queda disponible para su escucha a través de Internet.

Esto proporciona por tanto la posibilidad de ofrecer a nuestros usuarios la posibilidad de informar sus comentarios mediante voz.
La barra aparece como una simple barrita de
reproducción en Flash, y se integra fácilmente en cualquier página web.
Los mensajes quedan almacenados en un reproductor multimedia a
disposición de cualquiera que pulse en Play. La idea, además, permite
la inclusión de mensajes publicitarios breves (seis segundos) en la
cabecera de la barra, algo que se puede contextualizar, ofrecer como
patrocinio, etc. y que podría representar el desarrollo de todo un
nuevo sistema de publicidad con posibilidades muy interesantes.
Además, Barradevoces.com es un desarrollo íntegramente español, llevado a cabo por Javier de Alfonso (Vocesenlared.com) e Iván Sixto (I6NET).
Podeís verla en funcioamiento en la Web del producto o en la bitacora de Enrique Dans.
Más información: http://www.barradevoces.com/
Fuente: Enrique Dans.
» Leer más, comentarios, etc...
Ant, Ivy, Maven…
Diciembre 31st, 1969 - [Enlace local]
Estos días vuelvo con las dudas de cambiar el Ant por el Maven…
Hace tiempo que gestiono mis proyectos con ANT. A traves de él implemento:
- Todo el proceso de compilación, empaquetamiento y distribución de la aplicación.
- Para arrancar y parar los contenedores de aplicaciones sobre los que distribuir las aplicaciones.
- Para realizar analisis estáticos del código Java.
- Para lanzar las pruebas de test.
- Para la generación de código.
- Etc.
En cuanto a las dependencias hasta ahora no he tenido ningún problema con ellas. La carpeta /lib con todos sus jars las subo al control de versiones. Por tanto, los desarrolladores ya disponen de todass las librerias que les hacen falta y el proyecto correctamente configurado para trabajar con ellas.
Entiendo, que a lo mejor el control de versiones no es el mejor sitio para guardar los .jar pero como en la empresa el espacio en disco duro me sale gratis pues resulta muy comodo ponerlos alli. En cualquier caso, mediante Ivy puedo evitar esta situación y gestionar las dependencias desde scripts de ANTs.
Es decir, que con ANT, Ivy y un conjunto de scripts estandares que tengo montados hace tiempo parece ser que estoy más que servido para todo lo que me hace falta. Ademas otros dos temas muy importante:
- ANT se integra perfectamente con los entornos de desarrollo que he trabajado: Eclipse y JBuilder y por tanto tengo estas tareas de ANT como una barra de herramientas más del IDE.
- Y con otras herramientas de integración continua como Cruise Control. Supongo que en esto el Maven también.
- Me resultaba farragoso y poco claro.
- Me tenía que adaptar a una estructura que no era la mía ¿esto sigue siendo asi?
- Y me parece que no se integraba con el IDE. ¿ya se integra?
» Leer más, comentarios, etc...
Vendedores de crecepelo
Diciembre 31st, 1969 - [Enlace local]
Coincido en todo con lo que dice Alfredo de Hoces García-Galán en un post de apoyo a Trabajo Basura.
"En España, y presumiblemente en otros muchos países, el sector tecnológico es una estafa a gran escala donde se cobra por un conocimiento, una experiencia y una profesionalidad que no se tienen, un negocio bastante lucrativo en el que los miles de horas que se le roban al empleado y se le facturan al cliente se emplean en solucionar problemas que nunca debieron haberse producido y que son consecuencia directa de la absoluta incompetencia y falta de preparación y de ética de los directivos, casi todos pertenecientes a la simpática generación de los autodenominados nuevos emprendedores, que en su mayoría no son más que los pícaros y charlatanes de toda la vida que ahora se lanzan al ruedo de las tecnologías disfrazados de JASP (Jóvenes Aunque Sobradamente Prepotentes). Hace años vendían crecepelo y elixir de la juventud, ahora crecebeneficios y elixir del valor añadido. En ambos casos se aprovechan de lo mismo: la ignorancia y/o ingenuidad de cliente, que para cuando se da cuenta de que no sólo sigue siendo calvo si no que además tiene cáncer de piel, ya no encuentra al estafador por ninguna parte porque se ha dejado barba, le ha cambiado el logotipo al carro y ahora opera en el pueblo de al lado."
Coincido sobre todo en las primeras frases….
Vía: http://www.navegapolis.net
» Leer más, comentarios, etc...
TempImbox y Pookmail. Cuentas de correo basura.
Diciembre 31st, 1969 - [Enlace local]
Lo más habitual cuando nos registramos en algún sitio Web es que nos pidan nuestra cuenta de correo para que posteriormente verifiquemos dicho registro.
Supongo que como mucho de vosotros no soy amigo de enviar la dirección verdadera, por miedo al spam, etc.
Para ello tanto yo como mucha gente tenemos otra cuenta de correo que utilizamos para estos mentesteres. Yo en su día me envie una invitación desde gmail a otra cuenta mia. Y esa es la que utilizo para estas cosas.
Precisamente en TempImbox y Pookmail nos ofrecen este servicio de manera que de forma muy rapida y sencilla te ofrecen una cuenta de correo basura. En el primer caso te creas una cuentra de correo para el usuario que tu quieras y ya esta. En la segundo ni eso: Haces uso de la cuenta que quieras estan abiertas.
» Leer más, comentarios, etc...
Desconfiado que es uno…
Diciembre 31st, 1969 - [Enlace local]
Puede que no le falte razón, pero la verdad es que es la foto es graciosa…

Y como se que cuando publico dos post seguidos el primero se lee bastante menos os recuerdo el anterior que me parece más interesante: Micromanagement de Zombie Function.
» Leer más, comentarios, etc...
Micromanagement: The Zombie function
Diciembre 31st, 1969 - [Enlace local]
Hace unas meses publique una pequeña entrada sobe el micromanagement.
Para el que no lo recuerde, explicaba que es el
término inglés con el que se denomina el estilo de gestión en el que el
jefe tiene un alto grado de control y toma de decisiones de las tareas
que hacen sus subordinados y que estaba demostrado que era un estilo de gestión realmente ineficaz.
Vuelvo sobre el tema ya que he encontrado una imagen que describe perfecamente esta situación.

Vía: http://headrush.typepad.com/creating_passionate_users/2005/12/braindeath_by_m.html
» Leer más, comentarios, etc...
Mapa mental de la Web 2.0 (en castellano)
Diciembre 31st, 1969 - [Enlace local]
Hace unos días hacía referencia a un buen artículo sobre la Web 2.0 de Tim O’Reilly.
En dicho artículo hay un gráfico en el que se explica que es la Web 2.0.
Alfredo Madrigal de Nuhuati lo ha traducido al castellano.
» Leer más, comentarios, etc...
¿Que es la Web 2.0? SegúnTim O’Reilly
Diciembre 31st, 1969 - [Enlace local]
Formalizando mis conocimientos sobre la Web 2.0 me encontre con este estupendo artículo de Tim O`Reilly.
Un poco despues me encontre con la traducción en CanalPDA.
Os recomiendo su lectura (evidentemente al que tenga ganas).
» Leer más, comentarios, etc...
Reflexiones de Jonathan Schwarts sobre el software libre.
Diciembre 31st, 1969 - [Enlace local]
Unas interesantes reflexiones de Jonathan Schwartz Presidente y COO de Sun Microsystem sobre el software libre.
Aprovechando su anuncio de que van a incluir en Solaris el Java Enterprise System y abrirlo como soft libre y gratuito hace un par de reflexiones sobre el soft libre y OSS.
"El soft libre crea volúmen, que genera demanda para implementaciones, que genera ingresos por licencias y soporte de la misma forma que pasaba cuando los productos no eran gratuitos. El softlibre aumenta las oportunidades de ingresos.
Abrir Solaris y darlo gratis, nos llevó a la ola más grande de adopción que Solaris haya visto jamás, alrededor de 3.4 millones de licencias desde Febrero (muchas sobre HP curiosamente). Y esto se combinó con la mayor expansión en su base de ingresos y creo que lo mismo va a ocurrir con el Java Enterprise System, su manejo de identidades y las suites de integración. ¿Porqué?
Porque ni un solo cliente de los Fortune 2000 en el mundo va a correr el corazón de su negocio con productos que no tengan el número de teléfono de la casa de alguien del otro lado. Y ningún desarrollador o nación en desarrollo al que se le presente con un producto open source equivalente o mejor.. va a elegir una opción propietaria (nota: no conoce nuestros mercados)
Apostar contra el FOSS es como apostar contra la gravedad. Y Software libre no significa sin-ingresos, significa"
Vía Denken Uber.
» Leer más, comentarios, etc...
Browsershots, comprueba como tu página se ve en diferentes Sistemas Operativos y Navegadores
Diciembre 31st, 1969 - [Enlace local]
Browsershots es un servicio que te permite enviar la URL de tu página para posteriormente ver como se visualizarái en diferentes sistemas operativos y navegadores.
Para ello genera una imagen de como se visualiza.
El servicio ha tenido tanto exito que el resultado no es inmediato. Tu petición se añade a una cola para posteriormente ser procesada. El tiempo para la combinación de cierto sistemas operativos y navegadores puede llegar a ser de bastantes horas.
Este es un ejemplo de como se visualiza la página de programacion.com en un Firefox 1.0.4 sobre un Linux Debian.
» Leer más, comentarios, etc...
Los mejores proyectos Web 2.0 del 2005
Diciembre 31st, 1969 - [Enlace local]
Leo en spacebom una estupenda lista con los mejores proyectos Web 2.0 del 2005. Os la recomiendo muy interesante.
Lo que más me llama la atención es de donde sacara tiempo el autor para hacer estas listas. Porque revisando post anteriores tambien me he encontrado con:
» Leer más, comentarios, etc...
Nuevo diseño del Blog…
Diciembre 31st, 1969 - [Enlace local]
Pues eso, que los que me visitais asiduamente (supongo que alguno habra
) ya habréis observado que en el día de hoy he estado modificando el diseño del blog y añadiendo nuevas funcionalidades.
Todavía no he terminado pero me voy unos días de vacaciones y continuare la semana que viene. He cambio colores, disposición de los elementos, etc. y tengo pendiente por ejemplo cambiar la cabecera. No se ¿que os parece como va quedando?, se aceptan consejos.
Entre las nuevas funcionalidades que he añadido:
- Facilidades para que podais subscribir la bitacora a vuestro lector de feeds habitual.
- Un botón para que si el artículo os gusta podáis añadirlo a delicious.
- Y un botoncito en la parte derecha para que el que no lo tenga se instale de una vez el Firefox.
» Leer más, comentarios, etc...
Aplicando la programación a finanzas
Diciembre 31st, 1969 - [Enlace local]
La oportunidad que nos ofrece el ser programadores en otros ambitos, es el ser capaces de utilizar la poderosa herramienta que es la programación. En finanzas y en concreto en bolsa existe una tendencia cada vez mas importante de informatizar las tomas de decisiones sobre comprar o vender acciones. Os invito a visitar el nuevo blog que he creado sobre Bolsa, http://www.especulacion.org en el que trato de explicar los desarrollos que estoy realizando para encontrar sistemas automáticos que inviertan en bolsa. Si alguno tiene esta misma afición y quiere compartir este aprendizaje podemos ponernos el contacto en los foros del portal.
» Leer más, comentarios, etc...
Libros imprescindibles para un programador
Diciembre 31st, 1969 - [Enlace local]
En este profesión es imprescindible seguir formandose continuamente. La lectura de diferentes web o de articulos son una muy buena forma de poder hacerlo, aunque el problema que en mi opinión tienen es que su formato no permite que se entre en demasiado detalle. Para cubrir este problema podemos encontrar libros realmente buenos que en mi opinión son de imprescindible lectura para un buen programador. Si encima como si eres de esas raras personas a las que les gusta leer libros técnicos en tu tiempo libre, entonces probablemente te puedan dar algunas ideas la lista de libros que te propongo.
En principio este post voy a tratar de irlo actualizando con la lista de libros que voy leyendo y con vuestra sugerencias. Es una lista reducida de los mejores libros que he leido.
Una de las preguntas que recomiendo hacer en un entrevista cuando se contrata a un programador, es ¿Cual es último libro que has leido sobre temas técnicos?. En mi opinión es muy acertada porque permite saber el interes que tiene una persona en seguir actualizado.
Os recomiendo que sigais los enlaces de las imagenes si quereis comprar alguno, porque en Amazon estan a muy buen precio.
Refactoring: Improving the Design of Existing Code : Martin Fowler En mi opinion la biblia de la Refactorización. Deberían estudiarse estas refactorizaciones en la facultad.
Pragmatic Programmer: Mi favorito. Un excelente y completo compendio de las buenas prácticas que debe seguir un programador.
Desarrollo Dirigido por Pruebas: Despues de este libro hay un antes y un despues en la forma de programar. Muy interesante la lectura del primer apartado, que con un ejemplo sencillo conseguira introducirnos en el mundo del desarrollo dirigido por pruebas.
Pensando en Java: Un libro excepcional para repasar Orientación a Objetos para los amantes de Java. Por cierto este se puede descargar gratis desde la web, aunque yo creo que merece la pena tener el libro. 
» Leer más, comentarios, etc...
Eliminar Variable Temporal (Inline Temp)
Diciembre 31st, 1969 - [Enlace local]
¿Tendemos a hacer optimización temprana? La verdad es que, no se si heredado de otras epocas donde el espacio era muy valioso, o porque realmente tenemos tendencia a preocuparnos mucho por la eficiencia, pero creo que se suele generalmente hacer optimización temprana. Pero, ¿no es mas facil atacar el problema de la eficiencia una vez que hemos desarrollado nuestra aplicación consiguiendo un buen diseño orientado a objetos? ¿No es una mala práctica guiar nuestro diseño y nuestra codificación en función de optimizaciones cuyo impacto todavía desconocemos?
Descripción
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
double interes = prestamo.calculaInteres(); if (interes > o) …
...
}
Después de aplicar Eliminar Variable Temporal tendremos el siguiente código:
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
if (prestamo.calculaInteres() > o) ...…
}
Url
http://www.refactoring.com/catalog/inlineTemp.html
Comentarios
Con esta refactorización me costo estar de acuerdo. Quizas el ejemplo que pongo no refleja bien el problema que le veia. El problema que le veia a esta Refactorizacion era que estabamos eliminando la variable que almacenaba el resultado de una llamada a otro metodo y que por este motivo tendriamos que hacer esa misma llamada en cualquiera de los sitios donde estuvieramos utilizando esa variable. ! Que perdida de eficiencia !
De lo que no era consciente es que cuando programamos muchas veces no nos importa aplicar soluciones que harán nuestro código inmantenible con la excusa de ganar eficiencia. Parece que esta excusa es una de las mejores que nos podemos poner para saltarnos las reglas de una buena codificación. La experiencia me dice que mucho mas fácil y mas productivo mejorar la eficiencia de un código bien desarrollado, que ir según vamos desarrollando aplicando mejoras de performance que no sabemos cual el impacto que tendrán en el global. Desde luego por ese motivo no considero una buena razon la perdida de eficiencia para no entender esta refactorizacion.
Una vez soltado el discurso filosófico, creo las variable temporales en muchos casos hacen nuestro código mas ilegible. Bien por la nomenclatura, bien por que las utilizamos para varias cosas. Son especialmente dolorosos los efectos colaterales que a veces ocasionan. En aquellos casos en los que el valor que tenemos en la variable temporal se obtenga de una llamada sencilla es muy recomendable hacer esta refactorización.



