YAGNI (You Aren't Gonna Need It)
Um princípio de Programação Extrema que afirma que programadores não devem adicionar funcionalidade até que seja realmente necessária, evitando recursos especulativos.
Definicao
YAGNI vem de Extreme Programming (XP) e combate a tendência de construir para requisitos futuros imaginados. Adicionar recursos não utilizados aumenta a complexidade do código, carga de manutenção e introduz bugs potenciais — tudo para funcionalidade que pode nunca ser usada. Estudos mostram que 64% dos recursos de software são raramente ou nunca usados.
Por que e importante
Recursos especulativos desperdiçam tempo de desenvolvimento e criam dívida técnica. Código que antecipa cada possível necessidade futura fica inchado e difícil de manter. YAGNI encoraja foco em requisitos atuais validados.
Exemplo
Violação YAGNI: construir um sistema de plugins genérico "caso precisemos depois" quando o app só precisa de um comportamento fixo. Seguindo YAGNI: implementar o comportamento único agora, adicionar arquitetura de plugins apenas quando um segundo plugin for realmente necessário.