finita implementazione (bozza) factory method