quinta-feira, 7 de julho de 2011

Cadastro: Usar ou não campos para DDD e DDI?

Desde que iniciei na area de desenvolvimento, sempre implementei campos para DDD e DDI nos formulários de cadastro. De lá para cá, observei algumas mudanças que, até causaram certos problemas no aplicativos:

  1. Primeiro vi problemas com o tamanho dos campos: Nesta época, aqui no Rio os telefones eram compostos por 7 dígitos. Logo logo mudou para 8
  2. As pessoas só possuíam um único telefone, quando possuíam.
  3. Era comum o campo Fax, também com os campo DDD e DDI (este último só em casos especiais.)
  4. Usava-se somente um campo DDD e/ou DDI, considerando que os demais telefones e números de Fax fossem do mesmo código de area 
 Hoje, é comum uma pessoa ter vários números de telefone. Tenho amigos que tem telefones do Rio e de Petrópolis, empresas tem números em vários estados, quase não se usa mais Fax, existe SIP/Skype e, mesmo em casa, já se tem mais de um número fixo.

Fica inviável ter campos para DDD/I ao lado de cada número de telefone.

Como se resolve isso?

Somente utilizando um único campo sem limitação para os números de telefone e, prevendo que a pessoa possa ter N números. Assim, cria-se modelos/tabelas especificas para as formas de contato, que agora devem incluir e-mail, Gtalk, MSN, Twitter, entre outros, relacionando-as com o cadastro da pessoa, que agora vai digitar tudo neste campo.

Para quem achar que o usuário não vai saber usar, fica a velha dica do exemplo, onde irá informar ao usuário como preencher o campo. Ex.: + 55 21 1234-5678

Isso já elimina vários problemas. E tem mais: Já tem operadoras de telefone falando em números com 9 dígitos. Não é uma maravilha? Logo, logo os números de telefone vão ser como IPs, precisando de um serviço de tradução de nomes, como DNS. Será o PNS de Phone Name Server . ;-)

O que me dizem? Mantém ou remove os campos DDD e/ou DDI?

Um comentário:

  1. Simple, um campo só. usa mascaras de formatação para para definir o que e como mostrar, você pode descobrir a mascara pelo type do registro.

    ResponderExcluir