Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Feedback sobre código

Boa tarde pessoal, tudo bem ?
Estou fazendo um desafio, e quis tentar diversificar um pouco, por isso gostaria de pedir a opinião de vocês.
O desafio é o seguinte :

"
Escreva um código que receba entradas sem formatação e as retorne formatadas, os tipos de entradas que o código deve retornar são as seguintes:

Telefone fixo (8 dígitos sem DDD xxxx-xxxx, 10 Dígitos com DDD (xx)xxxx-xxxx);
Celular (9 dígitos sem DDD xxxxx-xxxx, 11 dígitos (xx)xxxxx-xxxx);

O código deve ser capaz de detectar as seguintes situações:

  • Se receber somente números detectar se corresponde com algum dos formatos aceitos e retornar formatado;
  • Se receber uma entrada com quantidade de números diferentes dos padrões descritos acima, informar que não se trata de um número válido;
  • Se receber um número formatado, retorna-lo do mesmo jeito e informar de qual tipo de dispositivo se trata;
  • Se receber com mascara incorreta, corrigir e retornar
  • Se receber qualquer entrada que tenha números e outros caracteres verificar se tem números para compor um dos tipos aceitos e retornar do que se trata ou retornar que foi uma entrada inválida.

"

Eu quis tentar modelar o número em uma classe Chip, e deixar o validador nessa classe.

Código : https://gist.github.com/IgorMiyada/077bd10324de6e045d694f0afdcd86fb

Se puderem dar uma olhada e deixar um feedback, seria de grande ajuda. Agradeço desde já

1 resposta
solução!

Oi, Igor! Como vai?

Do jeito que você explicou, a ideia de modelar o número dentro da classe ChipNumber ficou bem organizada. A abordagem de validar e formatar direto no construtor ajuda a manter o objeto sempre consistente, e isso chama atenção pela boa separação de responsabilidades.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!