Category Archives: Uncategorized

EasyMock: Mocks… eh… fácil.

El TDD es muy lindo hasta que nos toca hacer un test unitario a un componente que tiene muchas dependencias, que en estos tiempos de arquitecturas multitier suelen ser la mayoria. Estas dependencias suelen remplazarse por objetos que simulan ser los reales compartiendo la misma interfaz. Claro que es solo una fachada, su implementación dista mucho [...]
Posted in Uncategorized | Leave a comment

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

[XKCD] Windows 7

Also posted in Jokes | Tagged | 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. [...]
Also posted in Frameworks, Patterns, Spring | Tagged , | 1 Comment

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 [...]
Posted in Uncategorized | Tagged | 1 Comment

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.
Posted in Uncategorized | Tagged | Leave a comment

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
35665 pages viewed, 42 today
17305 visits, 10 today
FireStats icon Powered by FireStats