Pergunta

Estou confuso sobre qual é a diferença entre Aprimoramento Progressivo e Degradação Graciosa.Para mim, eles parecem a mesma coisa.

Você pode me explicar as diferenças entre os dois e em que situação eu usaria um em vez do outro?

Foi útil?

Solução

Eles são quase exatamente a mesma coisa, mas diferem no contexto.

Há uma classe de navegadores chamados "A Grade Browers". Esses são seus membros típicos da platéia que (provavelmente) compõem a maioria dos seus visitantes. Você começará com uma linha de base desses usuários. Chame isso Melhores práticas modernas.

Se você quiser realçar A experiência para quem está acontecendo usar o FF3.6 ou o Safari 4 ou algum outro desenvolvedor de Whizbang Nightly Webkit Whathave You, você vai querer fazer coisas incríveis como

  • cantos arredondados via CSS
  • texto sombreado (mas por favor Deus, não muito)
  • Drop Shadows (veja acima entre parênteses)

Isso faz com que o seu site pareça, mas não o quebra. Isto é aprimoramento progressivo. Abraçando o futuro do ponto de Melhores Práticas.

Por outro lado, seu site de nicho Nintendo atrai um número razoável de usuários do IE5. Pobre você, mas você também deseja garantir que eles voltem. Você pode fornecer uma alternativa ao seu comportamento do Ajax, incluindo o script do Ajax em um arquivo externo e se o JS não estiver ativado, talvez seus links atualizem a página inteira. Etc. do ponto de vista de Melhores práticas modernas, você está certificando -se de que certos mercados históricos estão sendo atendidos por alguma aparência de um site funcional. Isto é degradação graciosa.

Eles são principalmente idênticos, mas diferem em termos de prioridade para muitas equipes de desenvolvimento: o PE é bastante bom se você tiver tempo, mas o GD é frequentemente necessário

Outras dicas

Se o seu site parecer igualmente bom em todos os navegadores, mas certos navegadores recebem, digamos, os pôneis dançando porque apoiam pôneis de dança, esse é um aprimoramento progressivo. Funciona em todos os navegadores, mas certos navegadores recebem algo extra. Geralmente, esse termo é aplicado a certos recursos JavaScript que podem melhorar a usabilidade além do "HTML bruto".

Se o seu site parece apenas da maneira que você pretende nos navegadores que suportam totalmente, digamos, CSS3 e IE8- exibirão a mesma página sem, digamos, cantos arredondados, essa é uma degradação graciosa. O site é realmente destinado a navegadores de última geração, mas ainda é utilizável em navegadores mais antigos, mas não tão chiques.

No final, eles são realmente a mesma coisa, olharam de duas perspectivas diferentes.

A direção de um escolhido linha de base pois cada conceito é diferente.

A degradação graciosa começa em um nível ideal de experiência do usuário e diminui dependendo dos recursos do agente do usuário até um nível mínimo, atendendo a agentes que não oferecem suporte a determinados recursos usados ​​pela linha de base.

O aprimoramento progressivo começa com uma ampla experiência mínima do usuário e aumenta dependendo dos recursos do agente do usuário até um nível mais capaz, atendendo a agentes que oferecem suporte a recursos mais avançados do que a linha de base.

Penso que se poderia empregar ambos os conceitos se o tempo/orçamento permitir.Caso contrário, a degradação elegante seria preferida.

Desculpe ressuscitar algo que tem mais de um ano, mas senti que eu poderia contribuir, de alguma maneira, minha própria opinião sobre o assunto.

Embora eu concorde com Alex McP e Deceze de certa forma, os termos "degradação graciosa" e "aprimoramento progressivo" têm significados ligeiramente diferentes de onde estou.

Degradação graciosa, na maioria das vezes (na minha opinião), parece ser mais um bastão para vencer um aplicativo em submissão depois de ter sido mal construído em primeiro lugar na minha experiência. Como alguém construindo um vasto objeto JavaScript que fornece ao usuário algo muito legal de brincar, até que um gerente apareça, testa a coisa e todos correm gritando jogando os braços quando se trata de atenção que o aplicativo não funciona em 35% dos navegadores. "É melhor alguém fornecer um fallback para isso."

Aprimoramento progressivo Embora (e seja um termo tão melhor a dizer também) me parecerem mais sobre criar algo que funciona, em um nível de entrada, em todos os lugares, através dos métodos mais básicos disponíveis, para fornecer todas as funcionalidades que o usuário precisa. Isso pode ser adicionado a pequenos ajudantes discretos, estilo etc. que realmente aprimoram a experiência do usuário do aplicativo em questão, em vez de apenas torná -lo quase utilizável. "Isso parece legal. Funciona no IE6. Ah, sim. Faz"

Eu acho que talvez dar estilo como exemplo de ambos os termos nas duas principais respostas aqui meio que ignora a verdadeira questão de usabilidade subjacente que aprimoramento progressivo frequentemente resolve por sua própria natureza, onde degradação graciosa ignora até que as coisas dêem errado.

Reclamar ...

A degradação graciosa é a prática de construir sua funcionalidade da Web, para que proporcione um certo nível de experiência do usuário em navegadores mais modernos, mas também se degradará graciosamente para um nível mais baixo de experiência na experiência em navegadores mais antigos. Esse nível mais baixo não é tão bom de usar para os visitantes do seu site, mas ainda fornece a funcionalidade básica que eles vieram ao seu site para usar; As coisas não quebram para eles.

O aprimoramento progressivo é semelhante, mas faz as coisas ao contrário. Você começa estabelecendo um nível básico de experiência do usuário que todos os navegadores poderão fornecer ao renderizar seu site, mas também criará uma funcionalidade mais avançada que estará disponível automaticamente para os navegadores que podem usá -lo.

Em outras palavras, a degradação graciosa começa a partir do status quo da complexidade e tenta corrigir a experiência menor, enquanto o aprimoramento progressivo começa a partir de um exemplo muito básico de trabalho e permite uma extensão constante para ambientes futuros. Degradar graciosamente significa olhar para trás, enquanto melhorar progressivamente significa olhar para frente, mantendo os pés em terreno firme.

Degradação graciosa

Degradação graciosa é a capacidade de um computador, máquina, sistema eletrônico ou rede para manter a funcionalidade limitada, mesmo quando uma grande parte dele foi destruída ou tornada inoperante. O objetivo da degradação graciosa é impedir a falha catastrófica.

A degradação graciosa é uma solução. É a prática de criar um site ou aplicativo, por isso fornece um bom nível de experiência do usuário nos navegadores modernos. No entanto, se degradará graciosamente para aqueles que usam navegadores mais antigos. O sistema pode não ser tão agradável ou bonito, mas a funcionalidade básica funcionará em sistemas mais antigos.

Um exemplo simples é o uso de PNGs alfa-transparentes de 24 bits. Essas imagens podem ser exibidas em navegadores modernos sem problemas. O IE5.5 e o IE6 mostrariam a imagem, mas os efeitos da transparência falhariam (pode ser feito para funcionar, se necessário). Os navegadores mais antigos que não suportam o PNG mostrariam texto alt ou um espaço vazio.

Os desenvolvedores que adotam degradação graciosa geralmente especificam seu nível de suporte ao navegador, por exemplo, navegadores de nível 1 (melhor experiência) e navegadores de nível 2 (experiência degradada).

Aprimoramento progressivo

Aprimoramento progressivo é uma estratégia para o design da web que enfatiza a acessibilidade, a marcação semântica de HTML e as tecnologias de folha de estilo externas e scripts. O aprimoramento progressivo usa tecnologias da web de maneira em camadas que permitem que todos acessem o conteúdo básico e a funcionalidade de uma página da web, usando qualquer navegador ou conexão com a Internet, além de fornecer uma versão aprimorada da página para aqueles com software mais avançado do navegador ou maior largura de banda .

O aprimoramento progressivo é um conceito semelhante à degradação graciosa, mas ao contrário. O site ou aplicativo estabeleceria um nível básico de experiência do usuário para a maioria dos navegadores. A funcionalidade mais avançada seria então adicionada quando um navegador a suporta.

O aprimoramento progressivo não exige que selecionemos navegadores suportados ou revertem para layouts baseados em tabela. Escolhemos um nível de tecnologia; ou seja, o navegador deve suportar o HTML 4.01 e a solicitação de página padrão/respostas.

Voltando ao nosso exemplo de imagem, podemos decidir que nosso aplicativo deve estar funcional em todos os navegadores gráficos. Poderíamos usar imagens GIF de qualidade inferior por padrão, mas substituí-las por PNGs de 24 bits quando o navegador as suporta.


Links

Wikipedia: Aprimoramento progressivo e Degradação graciosa (falha_tolerância)

Fonte : Blog do site

Acho que tende a ser atitudinal - você está dizendo: "Ok, meu site funciona com o Lynx, os usuários podem fazer tudo o que eu quero que eles possam fazer, agora vamos adicionar um pouco de panache", ou você está dizendo "ok, meu site funciona No Firefox, agora vamos tentar corrigi -lo para pessoas que não estão dispostas a usar isso/que desligam o JavaScript/etc "

Para facilitar, basta definir sua barra no topo, então você pode ignorar o aprimoramento progressivo. Quando um novo recurso sai, aumente o seu bar;)

ou, alternativamente, defina sua barra para o nível mais baixo (talvez o lince?) E apenas use aprimoramento progressivo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top