Un constructor siempre retorna una instancia completamente nueva de su clase exacta, con un nombre fijo a la clase. Un método factory es un método regular (a menudo estático) que crea objetos — dándote libertad sobre la nomenclatura, qué subtipo retornar, y si crear un nuevo objeto en absoluto.
