Refactoring: Extract Method Object

Ultimo refactor del dia. Cuando vi por primera vez el refactor propuesto por Martin Fowler


Me dije que es esto? Así que para entender esto veamos el siguiente código:


Si aplicamos el refactoring extract method apareceran varios metodos, el problema es que comparten varias variables locales.

Por esa razón es mejor aplicar el Extract Method Object y segregar la lógica en otra clase.

Ver como queda el codigo luego del Refactoring Extract Method Object:


Otro ejemplo en el sitio web de jetbrains:


Joe




Share:

Refactoring: Extract Method

Esta semana me compre el intellij idea para mi mac.
Y me gusto mucho los refactors que tiene. La tarea mia sera probarlos todo y de paso buscar su equivalente en Eclipse.

Para empezar Intellij IDEA soporta los refactorings propuestos en Refactoring: Improving the Design of Existing Code by Martin Fowler

1.- Extract Method
Tenemos un fragmento de código que puede ser agrupado.

Llevamos el fragmento a un método cuyo nombre explica el proposito del método.

Si tenemos un código así:


Al aplicar este refactor el resultado es:


Para complementar ver el siguiente video:


Así poco a poco ire documentando cada refactor. Si te interesa comenta o sugiere algún refactor necesitado.

Joe



Share:

Primer Taller de Java para Android Developers


Hoy lanzamos el taller de Java. Este taller era necesario porque hay muchas personas interesadas en el tema de desarrollo Android, pero, no saben Java. He visto que muchos han gustado de las alternativas multi-plataforma en lugar de desarrollar nítidamente (con Java).

Así que te recomiendo si te interesa desarrollar aplicaciones nativas con Android metete a este taller.

Nos vemos el 03 de Diciembre.

Informes en:


Joe
Share:

R15


Este post nace como consecuencia de mi clase de android de hoy.

Si sale una versión nueva del plugin ADT que hoy 20 de noviembre es la 15.0.1 y no actualizas el Android SDK pues tendrás problemas para correr tus programas de android.

Así que para que no te pase algo similar a lo que te cuento, basta con correr un comando como el que ves en la figura justo en la terminal: android update sdk y eso es todo.




Share:

Crear variables de entorno en Mac Lion

Este post lo pongo de apoyo a mi para cuando necesite crear una nueva variable de entorno tenga a la mano los comandos y las variables que ya haya definido.

Espero le sirva a alguien interesado en configurar variables de entorno en mac lion.

Usando textmate por ejemplo:

$mate ~/.bash_profile

El contenido es:


http://pastie.org/2845369

Enjoy!
Share:

H2 engine

Una de las cosas que a veces puede complicar la clase de un instructor es no tener instalada la BD.

Imaginemos un aula de 15 alumnos y pediste instalar el IDE, JDK, pero, uy la BD.

Bueno en mi caso para no sufrir mas decidí usar H2.

Donde lo obtengo


http://www.h2database.com/html/main.html

Hay una versión para windows y .zip para otras plataformas.

En mi caso para instalarlo en mi mac me baje el .zip

Quickstart


La instalación es tan sencilla que te recomiendo seguir este URL

http://www.h2database.com/html/quickstart.html

En resumen lo bajas donde quieras, yo en particular uso una carpeta tools donde guardo todo lo que descargo en java y luego voy a usar y bueno ahí lo tengo.

Luego buscas el h2.sh para lanzar la consola web de configuración y creación de tu primera BD H2.


Si sigues el url anterior te aparecera una pagina web usando el puerto 8082. No copio las pantallas porque ahí están, solo cambie la BD test por una mia y luego corri este script para probar.


http://pastie.org/2840282

¿Como lo uso?

Luego de crear tus tablas y tener una BD H2 con un nombre digamos (el que puse) roo_crm estas listo para usarlo en tu dataSource.  Yo recomiendo tener un database.properties y como ven le digo que use mi H2 engine local apuntando a mi bd roo_crm.



#Updated at Thu Nov 10 00:37:03 PET 2011
#Thu Nov 10 00:37:03 PET 2011
database.password=
database.url=jdbc:h2:tcp://localhost/~/roo_crm
database.username=sa
database.driverClassName=org.h2.Driver


Disfrutalo.  No mas problemas para ejecutar en una BD persistente y trabajar comodo.




Share: