refactoring codice