Item 49: Verifique a validade dos parâmetros

Capítulo: Design de Métodos

Foco: Usabilidade, robustez e flexibilidade no design de métodos.
Cobertura: Tratamento de parâmetros e valores de retorno, design de assinaturas de métodos e documentação.

Item 49: Verifique a Validade dos Parâmetros

-…


This content originally appeared on DEV Community and was authored by Mulher Programadora

Capítulo: Design de Métodos

  • Foco: Usabilidade, robustez e flexibilidade no design de métodos.
  • Cobertura: Tratamento de parâmetros e valores de retorno, design de assinaturas de métodos e documentação.

Item 49: Verifique a Validade dos Parâmetros

- Restrições em Parâmetros:

  • Métodos e construtores geralmente possuem restrições sobre os valores dos parâmetros (ex.: índices não negativos, referências não nulas).
  • Essas restrições devem ser documentadas e verificadas no início do método.

- Importância da Verificação:

  • Detectar erros o mais cedo possível para evitar falhas inesperadas ou comportamento incorreto no método.
  • Métodos que não verificam seus parâmetros podem causar falhas difíceis de depurar.

- Documentação das Exceções:

  • Use a tag Javadoc @throws para documentar exceções lançadas em caso de violação de restrições.
  • Exceções comuns: IllegalArgumentException, IndexOutOfBoundsException, NullPointerException.

Exemplo de Verificação de Parâmetro:

public static int mod(int x, int y) {
    if (y <= 0) {
        throw new IllegalArgumentException("Divisor deve ser positivo.");
    }
    return x % y;
}

- Uso de Objects.requireNonNull:

  • Introduzido no Java 7, é usado para verificar nulidade de objetos.
  • Retorna o valor passado após a verificação:
this.m = Objects.requireNonNull(m, "Parâmetro 'm' não pode ser nulo");

- Verificação de Ranges (Java 9):
Métodos checkFromIndexSize, checkFromToIndex, e checkIndex para verificar índices em listas e arrays.
Menos flexíveis, usados principalmente para coleções.

- Verificação de Parâmetros em Métodos Não Públicos:
Para métodos não exportados, use assertions para verificar parâmetros:

assert x > 0 : "Valor de x deve ser positivo";

- Casos Especiais:

  • Construtores devem sempre verificar a validade dos parâmetros armazenados para uso posterior.
  • Exceções podem ser feitas para verificações custosas, onde a verificação é implícita durante o cálculo.

- Exemplo de Verificação Implícita:

  • Collections.sort(List) assume que os objetos são mutuamente comparáveis. A verificação ocorre durante o processo de ordenação.

- Tradução de Exceções:

  • Quando a verificação implícita lança a exceção errada, use a "tradução de exceção" para lançar a exceção correta.

- Flexibilidade nas Restrições:

  • Métodos devem ser projetados para ser o mais gerais possível, impondo o mínimo de restrições necessárias.

- Conclusão:

  • Documente e implemente verificações de validade de parâmetros em métodos e construtores. A prática é fundamental para evitar erros futuros e facilitar a depuração.

Exemplos do livro:

Image description

Image description

Image description


This content originally appeared on DEV Community and was authored by Mulher Programadora


Print Share Comment Cite Upload Translate Updates
APA

Mulher Programadora | Sciencx (2024-08-29T21:59:18+00:00) Item 49: Verifique a validade dos parâmetros. Retrieved from https://www.scien.cx/2024/08/29/item-49-verifique-a-validade-dos-parametros/

MLA
" » Item 49: Verifique a validade dos parâmetros." Mulher Programadora | Sciencx - Thursday August 29, 2024, https://www.scien.cx/2024/08/29/item-49-verifique-a-validade-dos-parametros/
HARVARD
Mulher Programadora | Sciencx Thursday August 29, 2024 » Item 49: Verifique a validade dos parâmetros., viewed ,<https://www.scien.cx/2024/08/29/item-49-verifique-a-validade-dos-parametros/>
VANCOUVER
Mulher Programadora | Sciencx - » Item 49: Verifique a validade dos parâmetros. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2024/08/29/item-49-verifique-a-validade-dos-parametros/
CHICAGO
" » Item 49: Verifique a validade dos parâmetros." Mulher Programadora | Sciencx - Accessed . https://www.scien.cx/2024/08/29/item-49-verifique-a-validade-dos-parametros/
IEEE
" » Item 49: Verifique a validade dos parâmetros." Mulher Programadora | Sciencx [Online]. Available: https://www.scien.cx/2024/08/29/item-49-verifique-a-validade-dos-parametros/. [Accessed: ]
rf:citation
» Item 49: Verifique a validade dos parâmetros | Mulher Programadora | Sciencx | https://www.scien.cx/2024/08/29/item-49-verifique-a-validade-dos-parametros/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.