---
title: "Generalidad especulativa"
type: "code-smell"
slug: "speculative-generality"
url: "http://localhost:3000/es/smells/speculative-generality.md"
category: "Dispensables"
description: "Hay una clase, un método, un campo o un parámetro sin usar."
---
# Generalidad especulativa

> Hay una clase, un método, un campo o un parámetro sin usar.

## Signs and Symptoms

Hay una clase, un método, un campo o un parámetro sin usar.

## Reasons for the Problem

A veces el código se crea «por si acaso», para dar soporte a funciones futuras previstas que nunca llegan a implementarse. Como resultado, el código se vuelve difícil de entender y de mantener.

## Payoff

* Código más esbelto.
* Mantenimiento más sencillo.
## Relations

**Treated by**

- [Colapsar jerarquía](/es/collapse-hierarchy.md)
- [Incorporar clase](/es/inline-class.md)
- [Método en Línea](/es/inline-method.md)
- [Eliminar parámetro](/es/remove-parameter.md)


## Detected by

- **sonar** `S1172` — Unused function parameters should be removed (https://rules.sonarsource.com/java/RSPEC-1172/)
- **sonar** `S1144` — Unused "private" methods should be removed (https://rules.sonarsource.com/java/RSPEC-1144/)
- **sonar** `S1068` — Unused "private" fields should be removed (https://rules.sonarsource.com/java/RSPEC-1068/)
- **eslint** `no-unused-vars` — Disallow unused variables (args option for parameters) (https://eslint.org/docs/latest/rules/no-unused-vars)
- **pylint** `W0613` — unused-argument (https://pylint.readthedocs.io/en/stable/user_guide/messages/warning/unused-argument.html)
