factory y selecion de clase