web-development-kb-pt.site

Quais são as diferenças entre aprimoramento progressivo e degradação graciosa?

O que é Aperfeiçoamento Progressivo? Não sou capaz de entender esse conceito. Como funciona e como é um modelo diferente/melhor (?) Que Degradação graciosa?

7
pramodc84

A resposta do Motolix é muito ampla, então deixe-me adicionar uma resposta específica ao desenvolvimento da web.

Aprimoramento progressivo é quando você cria um site disponível para todos, mas adiciona funcionalidades avançadas em camadas que melhoram a experiência de quem pode acessá-lo . Por exemplo, um site de texto básico pode ser atualizado para incluir um design (folhas de estilo), funcionalidade interativa (javascript) e vídeo (flash). Mas o site continua a funcionar apenas como um site baseado em texto. Leia mais em definição da wikipedia de aprimoramento progressivo .

Degradação graciosa é um aspecto de sistemas tolerantes a falhas em que seu projeto continua a funcionar mesmo que certos pontos do projeto possam ' não funciona. O artigo da wikipedia lista o HTML como um bom exemplo: o HTML5 funciona em todos os navegadores, porque os analisadores de HTML não quebram se houver tags não reconhecidas. Mas como navegadores mais antigos não reconhecem essas tags, eles também não podem fornecer a funcionalidade associada a elas (como os vários novos tipos de entrada, como intervalo, número, data, hora, cor etc.). Outro exemplo é definir cor e cor de fundo em CSS, mas possivelmente substituindo a cor por uma imagem. Se a imagem não carregar, o texto ainda ficará legível, mas isso pode não ser o caso, se você não garantir que a cor do plano de fundo seja aquela que permita que o texto fique legível.

A diferença entre os dois é onde você começa. O aprimoramento progressivo envolve começar com uma base sólida e melhorá-la a partir daí, garantindo operação contínua se as melhorias não forem suportadas. A degradação graciosa envolve começar com um aplicativo avançado, mas certificando-se de que, se certos elementos não forem suportados, ele continuará funcionando. Obviamente, isso significa que há um ponto de cruzamento entre os dois conceitos em algum momento.

9
Rahul

O aprimoramento progressivo é o processo de começar com um produto base sólido e expandir a partir daí. Por exemplo, você começa com um reprodutor de vídeo realmente bom, adiciona uma lista de reprodução e adiciona um conversor de vídeo. Basicamente, começando de um único ponto e expandindo-o para o exterior, conforme necessário (geralmente por feedback do usuário)

Degradação graciosa é o oposto, por exemplo, digamos que você construiu um site com muitos recursos - você pode usar o processo de degradação graciosa para remover lentamente os recursos desnecessários e reforçar os importantes. edit: pense nisso como uma rede ... Você começa a querer pegar o máximo possível, depois contrai o que realmente captura.

Acredito que o aprimoramento progressivo geralmente é um "modelo" melhor para a maioria dos projetos - já que é muito fácil ser pego em um processo de idéias intermináveis ​​ou "arrastar recursos". Seguindo um modelo progressivo, você pode evitar isso respondendo diretamente ao feedback do usuário e expandindo conforme necessário. No entanto, exige uma abordagem mais flexível, pois é mais difícil ter uma visão do seu objetivo final ... (mas, muitas vezes, os dois modelos acabam no mesmo lugar, acho melhor começar pequeno).

Espero que ajude, desculpe pelo comprimento.

2
Motolix