verbessern und kommentieren von factory pattern