Compatibilidade futura - Forward compatibility

Compatibilidade futura ou compatibilidade ascendente é uma característica de design que permite a um sistema aceitar entradas destinadas a uma versão posterior de si mesmo. O conceito pode ser aplicado a sistemas inteiros, interfaces elétricas , sinais de telecomunicações , protocolos de comunicação de dados , formatos de arquivo e linguagens de programação . Um padrão oferece suporte à compatibilidade com versões anteriores se um produto que está em conformidade com versões anteriores pode processar " normalmente " a entrada projetada para versões posteriores do padrão, ignorando novas partes que não compreende.

O objetivo da tecnologia compatível com o futuro é que os dispositivos antigos reconheçam quando os dados foram gerados para os novos dispositivos.

Compatibilidade com versões anteriores para o sistema mais antigo geralmente significa compatibilidade com versões anteriores para o novo sistema, ou seja, a capacidade de processar dados do sistema antigo; o novo sistema geralmente tem compatibilidade total com o antigo, sendo capaz de processar e gerar dados no formato do sistema antigo.

Compatibilidade direta não é o mesmo que extensibilidade . Um design compatível com versões futuras pode processar pelo menos alguns dos dados de uma versão futura de si mesmo. Um design extensível facilita a atualização. Um exemplo de ambas as idéias de design pode ser encontrado em navegadores da web. A qualquer momento, um navegador atual é compatível com versões futuras se aceitar normalmente uma versão mais recente de HTML. Considerando que a facilidade com que o código do navegador pode ser atualizado para processar o HTML mais recente determina o quão extensível ele é.

Exemplos

Padrões de telecomunicação

A introdução da transmissão estéreo FM, ou televisão em cores, permitiu compatibilidade futura, uma vez que receptores de rádio FM monofônicos e aparelhos de TV em preto e branco ainda podiam receber um sinal de um novo transmissor. Também permitiu compatibilidade com versões anteriores, uma vez que novos receptores podiam receber sinais monofônicos ou em preto e branco gerados por transmissores antigos.

Videogame

HTML

O HTML é projetado para tratar todas as tags da mesma forma (como elementos in-line inertes e sem estilo ), a menos que sua aparência ou comportamento sejam substituídos; pelas configurações padrão do navegador ou por scripts ou estilos incluídos na página. Isso faz com que a maioria dos novos recursos seja degradada normalmente em navegadores mais antigos. Um caso em que isso não funcionou como esperado foram os blocos de script e estilo, cujo conteúdo deve ser interpretado pelo navegador em vez de ser parte da página. Esses casos foram tratados encerrando o conteúdo em blocos de comentários.

Como não há atualização obrigatória de computadores ou navegadores da web, muitos desenvolvedores da web usam uma abordagem de degradação elegante ou aprimoramento progressivo , tentando fazer sites recém-criados que podem ser usados ​​por pessoas que desativaram o Javascript ou que têm computadores ou navegadores antigos ou em uma conexão lenta, mas ainda aproveitando as vantagens de um hardware mais rápido e melhor suporte a JavaScript em navegadores mais modernos, quando disponíveis.

Mídia ótica

Cada um dos três formatos de mídia ótica de 12 cm mais comuns ( CD , DVD e Blu-ray ) foi lançado pela primeira vez na forma somente leitura anos antes de as formas graváveis ​​estarem disponíveis. Em cada formato, há compatibilidade com versões anteriores e posteriores, em que a maioria das unidades e reprodutores somente de leitura mais antigos podem ler (mas não gravar) mídia gravável no mesmo formato, enquanto as unidades de leitura / gravação podem ler (mas não gravar) leitura antiga -apenas mídia. Não há compatibilidade de encaminhamento entre formatos; um CD player, por exemplo, não consegue ler um DVD (um formato mais recente), nem mesmo as faixas de áudio. Pode haver compatibilidade com versões anteriores para melhor comercialização (como um DVD player reproduzindo um CD de áudio), mas não é intrínseca aos padrões.

NUC (não compatível com versões anteriores)

Alguns produtos não são projetados para serem compatíveis com versões anteriores, o que é conhecido como NUC (incompatível com versões anteriores). Em alguns casos, isso pode ser intencional pelos designers como uma forma de dependência de fornecedor ou regressão de software .

Por exemplo, um produtor de cubículos considera alterar o design de seu cubículo. Um designer promove a mudança da área ocupada de 4 pés quadrados para 1,2 metros quadrados. Imediatamente, o gerente de vendas liga para "NUC" e o problema é entendido: se a pegada muda e os clientes existentes estão pensando em comprar mais do produtor, eles terão que encaixar uma unidade de tamanho diferente em um escritório projetado para o cubículo de 4 pés quadrados.

A obsolescência planejada é um tipo de compatibilidade com versões anteriores, mas em vez de adotar uma política de compatibilidade com versões anteriores, as empresas adotam uma política comercial de incompatibilidade com versões anteriores, de modo que aplicativos mais novos requerem dispositivos mais novos.

Veja também

Referências

links externos