-
Recent Posts
Archives
- June 2010 (2)
- May 2010 (1)
- October 2009 (1)
- July 2009 (1)
- June 2009 (1)
- May 2009 (1)
- April 2009 (1)
- February 2009 (2)
- January 2009 (1)
- July 2008 (2)
- June 2008 (4)
- May 2008 (3)
- April 2008 (6)
- March 2008 (4)
- February 2008 (6)
- January 2008 (7)
- December 2007 (2)
- November 2007 (2)
- September 2007 (2)
- August 2007 (1)
- January 2007 (2)
- November 2006 (1)
Categories
- Bofh (4)
- Certificaciones (1)
- Frameworks (2)
- Groovy (1)
- Java (13)
- Javascript (1)
- Jokes (5)
- Patterns (5)
- Procesos (1)
- Programming (1)
- Seguridad (4)
- Spring (1)
- Struts (3)
- Tomcat (2)
- Tool Box (1)
- Uncategorized (15)
Category Archives: Uncategorized
SourceMonitor
SourceMonitor es una aplicación freeware que examina el codigo fuente de nuestros proyectos y calcula distintas metricas acerca la complejidad que encuentra. Una caracteristica muy interesante es la posibilidad de tomar ’snapshots’ de los valores arrojados por las metricas para poder compararlos a lo largo de tiempo . Soporta Java, C, C++ y unos cuantos [...]
Posted in Uncategorized Leave a comment
Contadores Atómicos
Cuanto tiempo sin escribir… en fin. Siempre me llamo la atención que en Java muchas de las operaciones sobre primitivos no son atómicas. El statement c++; por ejemplo no es atómico y puede traernos muchos dolores de cabeza en entornos de multithreading. Vale recordar, consideramos una instrucción como “atómica” si no puede ser interrumpida para [...]
Posted in Uncategorized Leave a comment
Manejando XML con XStream
Existen muchas librerias que permiten manejar archivos XML dentro de Java. Tenemos desde Apache Commons Digester hasta StAX incorporado en la JRE6 pasando por incontables alternativas con menos fama. Si a estas alturas hay algun desprevenido que no sabe que es XML le recomiendo este articulo. Si bien hay muchas alternativas algunas son algo complicadas [...]
Posted in Uncategorized 2 Comments
Atando con Alambre
En mi país se usa la expresión “atar con alambre” cuando hablamos de una reparación que se hace de forma descuidada. Se lo ata con alambre y queda como queda. Esta expresión poco feliz ha sido usada para darle connotaciones negativas a una actividad tan noble como es arreglar cosas con un poco de alambre. [...]
Generics 201
Los Generics son un invento maravilloso hasta que nos encontramos con que no tienen un comportamiento demasiado polimorfico respecto a los objetos que queremos agregar a las colecciones. Suponiendo que partimos de esta jerarquia.
class Animal { }
class Perro extends Animal { }
class Gato extends Animal { }
Las declaraciones
List<Animal> animales1 = new Arraylist<Perro>();
List<Animal> animales2 = new [...]
La Batalla de SCJP
The %b (boolean) conversion character returns true for any non-null or non-boolean argument.
Que una conversion de cualquier valor no-booleano y no-null sea true es la cosa más estupida que escuche en mi vida. Period.
Serialización 101
class Animal {
public String name;
}
class Dog extends Animal implements Serializable {
// the rest of the Dog code
}
Because Animal is NOT serializable, any state maintained in the Animal class, even though the state variable is inherited by the Dog, isn’t going to be restored with the Dog when it’s deserialized! The reason is, the (unserialized) [...]
Posted in Uncategorized 1 Comment
¿Polimor-qué?
Supongamos que tenemos un metodo que devuelve una lista de SubCosa, subclase de Cosa. Como somos buena gente queremos usar Generics para hacer nuestro codigo un poco mas lindo.
public List<Subcosa> metodo() {}
Si en otro lado tenemos algo asi…
List< Cosa> cosas = metodo();
y compilamos.
found : java.util.List<SubCosa>
required: java.util.List<Cosa>
List<Cosa> cosas = metodo();
Consideremos el siguiente escenario
public [...]
Posted in Uncategorized Leave a comment
EasyMock: Mocks… eh… fácil.